Documentation
¶
Index ¶
- Constants
- Variables
- func FormatUnixMillisToMMDDYYYY(ms int64) string
- func FormatUnixMillisToRFC3339(ms int64) string
- type AccessControlOutput
- type AccessControlPrincipal
- type AccountInfo
- type ActionData
- type ActivityDetails
- type ActivityDetailsResponse
- type AuditAuthenticationInfo
- type AuditAuthenticationInfoLabels
- type AuditListItem
- type AuditOutput
- type AuditOutputData
- type AuditPrincipal
- type AuditResource
- type AuditResourceLabels
- type AuditResourceScope
- type AuditYamlData
- type AuditYamlResponse
- type CCMAwsPreferences
- type CCMAzureViewPreferences
- type CCMBaseResponse
- type CCMBusinessMapping
- type CCMCommitmentAPIFilter
- type CCMCommitmentBaseResponse
- type CCMCommitmentOptions
- type CCMCostByTime
- type CCMCostCategory
- type CCMCostCategoryDetailList
- type CCMCostCategoryList
- type CCMCostCategoryResource
- type CCMCostTarget
- type CCMCreatePerspectiveOptions
- type CCMCreatePerspectiveResponse
- type CCMCurrencyPreference
- type CCMError
- type CCMException
- type CCMGcpPreferences
- type CCMGetCostCategoryOptions
- type CCMGetLastPeriodCostPerspectiveOptions
- type CCMGetLastTwelveMonthsCostPerspectiveOptions
- type CCMGetPerspectiveOptions
- type CCMGraphQLError
- type CCMGraphQLErrorExtensions
- type CCMGraphQLErrorLocation
- type CCMGraphQLFilters
- type CCMGraphQLKeyValueFilters
- type CCMGroupBy
- type CCMIssueTypeInfo
- type CCMJiraIssueType
- type CCMJiraIssueTypesList
- type CCMJiraIssueTypesOptions
- type CCMJiraIssueTypesResponse
- type CCMJiraProjectDetail
- type CCMJiraProjects
- type CCMKeyValue
- type CCMLastPeriodCostPerspective
- type CCMLastTwelveMonthsCostPerspective
- type CCMListCostCategoriesDetailOptions
- type CCMListCostCategoriesOptions
- type CCMListLabelsV2KeysOptions
- type CCMListLabelsV2KeysResponse
- type CCMListPerspectivesDetailOptions
- type CCMMasterAccountsListResponse
- type CCMMetadata
- type CCMMetadataResponse
- type CCMOverview
- type CCMPaginationOptions
- type CCMPerspective
- type CCMPerspectiveBudget
- type CCMPerspectiveBudgetOptions
- type CCMPerspectiveBudgetResponse
- type CCMPerspectiveDetail
- type CCMPerspectiveFilterValues
- type CCMPerspectiveFilterValuesOptions
- type CCMPerspectiveFilterValuesResponse
- type CCMPerspectiveForecastCost
- type CCMPerspectiveGridDataPoint
- type CCMPerspectiveGridDataWrapper
- type CCMPerspectiveGridEntityStats
- type CCMPerspectiveGridOptions
- type CCMPerspectiveGridResponse
- type CCMPerspectiveRecommendationsOptions
- type CCMPerspectiveRecommendationsResponse
- type CCMPerspectiveReference
- type CCMPerspectiveSummaryWithBudgetOptions
- type CCMPerspectiveSummaryWithBudgetResponse
- type CCMPerspectiveTimeSeriesOptions
- type CCMPerspectiveTimeSeriesResponse
- type CCMPerspectiveTimeSeriesStat
- type CCMPerspectiveTimeSeriesValue
- type CCMPerspectiveTrendStats
- type CCMPerspectiveView
- type CCMPerspectiveViewList
- type CCMPerspectivesDetailList
- type CCMRecommendationDetailOptions
- type CCMRecommendationStatsV2
- type CCMRecommendationsV2
- type CCMReference
- type CCMResponseMessage
- type CCMRule
- type CCMSharedCost
- type CCMSplit
- type CCMStackTraceElement
- type CCMStatsInfo
- type CCMSuppressed
- type CCMTicketDetails
- type CCMTicketToolSetting
- type CCMTicketToolSettings
- type CCMTicketToolSettingsResponse
- type CCMUnallocatedCost
- type CCMUser
- type CCMViewCondition
- type CCMViewField
- type CCMViewPreferences
- type CCMViewRule
- type CCMViewTimeRange
- type CCMViewVisualization
- type CEView
- type CcmDataPoint
- type ChaosData
- type ChaosExecutionNode
- type ChaosExecutionResponse
- type ChaosExperimentInputsetSpec
- type ChaosExperimentTemplate
- type ChaosInfraV2
- type ChatHistoryItem
- type ChatRequest
- type Check
- type CheckDetails
- type CheckDetailsResponse
- type CheckListItem
- type CheckResponse
- type CheckResponseList
- type CheckStats
- type CheckStatsResponse
- type CheckStatsResponseWithHumanReadableTime
- type CheckStatus
- type ChildGraph
- type CodeComment
- type CommandProbe
- type CommitmentCoverageRow
- type CommitmentEC2AnalysisResponse
- type CommitmentEstimatedSavings
- type CommitmentEstimatedSavingsResponse
- type CommitmentSpendsResponse
- type CommitmentUtilisationResponse
- type CommitmentUtilisationSummary
- type CommitmentUtilizationChart
- type CommitmentUtilizationsDetailTable
- type CommitmentUtlizationsDetail
- type ComputeCoverageChart
- type ComputeCoveragesDetail
- type ComputeCoveragesDetailTable
- type ComputeSpendChart
- type ComputeSpendsDetail
- type ComputeSpendsDetailTable
- type Connector
- type ConnectorCatalogueItem
- type ConnectorDetail
- type ConnectorDetailResponse
- type ConnectorEntityValidityDetails
- type ConnectorError
- type ConnectorGitDetails
- type ConnectorListData
- type ConnectorListDataResponse
- type ConnectorListQueryParams
- type ConnectorListRequestBody
- type ConnectorListResponse
- type ConnectorStatus
- type ConnectorStatusResponse
- type CreateExperimentFromTemplateRequest
- type CreatePullRequest
- type CreateResourceGroupOutputData
- type CreateResourceGroupRequestBody
- type CreateRoleAssignmentOutputData
- type CreateRoleAssignmentRequestBody
- type CreateRoleOutputData
- type CreateSampleLoadTestRequest
- type CreateServiceAccountRequestBody
- type CreateUserGroupOutputData
- type CreateUserGroupRequestBody
- type CurrentUserData
- type Dashboard
- type DashboardData
- type DashboardListOptions
- type DashboardListResponse
- type Delegate
- type DelegateEntityOwner
- type DelegateGroupDetail
- type DelegateGroupsResource
- type DelegateGroupsResponse
- type DelegateInstanceDetail
- type DelegateListFilter
- type DelegateListOptions
- type DelegateListResponse
- type DelegateReplica
- type DelegateToken
- type DelegateTokenListResponse
- type DelegateTokenOptions
- type DelegateTokenResponse
- type DelegateTokenStatus
- type DeleteLoadTestResponse
- type EmbeddedUser
- type EndpointAssertions
- type Entity
- type EntityGitDetails
- type EntityResponse
- type EntityValidityDetails
- type Environment
- type EnvironmentListResponse
- type EnvironmentOptions
- type EnvironmentResponse
- type ErrorData
- type ErrorResponse
- type EstimatedSavingsRemoteResponse
- type ExecuteWorkflowRequest
- type ExecuteWorkflowResponse
- type ExecutedByExperiment
- type ExecutionException
- type ExecutionFailureInfo
- type ExecutionGraph
- type ExecutionNode
- type ExecutionResponseMessage
- type ExecutionSummaryInfo
- type ExecutionTriggerInfo
- type ExperimentCreationRequest
- type ExperimentCreationResponse
- type ExperimentRunDetail
- type ExperimentRunRequest
- type ExperimentV2
- type FMEBucket
- type FMECondition
- type FMEDefaultRule
- type FMEEnvironment
- type FMEEnvironmentsResponse
- type FMEFeatureFlag
- type FMEFeatureFlagDefinition
- type FMEFeatureFlagDefinitionResponse
- type FMEFeatureFlagsResponse
- type FMEMatcher
- type FMERolloutStatus
- type FMERule
- type FMETag
- type FMETrafficType
- type FMETreatment
- type FMEWorkspace
- type FMEWorkspacesResponse
- type FaultData
- type FinalLogKeys
- type GetAllScorecardSummaryParams
- type GetChecksParams
- type GetEntitiesParams
- type GetEntityParams
- type GetExperimentResponse
- type GetProbeResponse
- type GetScorecardsParams
- type GitDetails
- type HTTPProbe
- type HarnessErrorMessage
- type HelperPodDetails
- type IDPUser
- type IdentifiersQuery
- type Infrastructure
- type InfrastructureItem
- type InfrastructureListResponse
- type InfrastructureOptions
- type InputSetDetail
- type InputSetErrorDetails
- type InputSetErrorWrapper
- type InputSetListData
- type InputSetListItem
- type InputSetListOptions
- type InputSetListResponse
- type InputSetResponse
- type InputValue
- type InviteUserOutputData
- type InviteUserRequestBody
- type LinuxInfra
- type ListAuditEventsFilter
- type ListExperimentResponse
- type ListExperimentTemplateResponse
- type ListExperimentVariables
- type ListLinuxInfraResponse
- type ListLoadTestResponse
- type ListOutput
- type ListOutputData
- type ListProbeResponse
- type ListSecretsData
- type ListSecretsResponse
- type LoadTest
- type LoadTestConfig
- type LoadTestEndpoint
- type LoadTestJSONSpec
- type LoadTestRun
- type LoadTestRunResponse
- type LogDownloadResponse
- type MatchingDoc
- type MoveConfigType
- type MoveEnvironmentConfigsRequest
- type MoveEnvironmentConfigsResponse
- type MoveInfraConfigsRequest
- type MoveInfraConfigsResponse
- type PageInfo
- type PageableInfo
- type Pagination
- type PaginationOptions
- type PermissionsOutputData
- type PermissionsOutputObject
- type PipelineData
- type PipelineExecution
- type PipelineExecutionOptions
- type PipelineExecutionResponse
- type PipelineListItem
- type PipelineListOptions
- type PipelineSummary
- type PipelineTag
- type PipelineTriggeredBy
- type Principal
- type ProbeData
- type ProbeIterations
- type ProbeRecentExecutions
- type ProbeRequest
- type ProbeTemplateRunProperties
- type PromProbe
- type PullRequest
- type PullRequestActivitiesResponse
- type PullRequestActivity
- type PullRequestActivityOptions
- type PullRequestAuthor
- type PullRequestCheck
- type PullRequestCheckInfo
- type PullRequestCheckPayload
- type PullRequestCheckReporter
- type PullRequestCheckSummary
- type PullRequestChecksResponse
- type PullRequestLabel
- type PullRequestOptions
- type PullRequestRule
- type PullRequestStats
- type Repository
- type RepositoryOptions
- type ResourceGroup
- type ResourceGroupResourceFilter
- type ResourceSelectorV2
- type Role
- type RoleAssignment
- type RoleAssignmentMetadataObject
- type RoleAssignmentPrincipalFilter
- type RoleAssignmentRequestBody
- type RoleAssignmentsOutputData
- type RoleAssignmentsOutputDataContent
- type RoleBinding
- type RoleData
- type RoleInfoOutputData
- type RoleReference
- type RolesOutputData
- type RolesOutputDataContent
- type Rule
- type RunChaosExperimentResponse
- type RunLoadTestRequest
- type SavingsDetail
- type SavingsDetailChart
- type SavingsDetailTable
- type Scope
- type Scorecard
- type ScorecardChecksDetails
- type ScorecardDetails
- type ScorecardDetailsResponse
- type ScorecardRecalibrateInfo
- type ScorecardResponse
- type ScorecardScore
- type ScorecardScoreResponse
- type ScorecardStats
- type ScorecardStatsResponse
- type ScorecardStatsResponseWithHumanReadableTime
- type ScorecardSummaryInfo
- type ScorecardSummaryResponse
- type SearchTechDocsRequest
- type SearchTechDocsResponse
- type Secret
- type SecretData
- type SecretFilterProperties
- type SecretGetOptions
- type SecretResponse
- type SecretSpec
- type Service
- type ServiceAccountData
- type ServiceAccountInfo
- type ServiceListResponse
- type ServiceOptions
- type ServiceResponse
- type Setting
- type SettingItem
- type SettingsListOptions
- type SettingsResponse
- type SortInfo
- type Status
- type StopLoadTestResponse
- type Targets
- type TemplateListOptions
- type TemplateListOutput
- type TemplateMetaDataList
- type TemplateMetadataSummaryResponse
- type TemplateOutput
- type TimeSeriesDataPoints
- type TriggerExtraInfo
- type TriggerListItem
- type TriggerListOptions
- type TriggerStatus
- type UTMInfo
- type UnitProgress
- type User
- type UserBasicInfo
- type UserData
- type UserDetail
- type UserGroupInfoData
- type UserGroupInfoDataId
- type UserInfoData
- type UserPreferences
- type UsersOutput
- type UsersRequestBody
- type ValidationStatus
- type Variable
- type VariableMinimum
- type WebhookAutoRegistrationStatus
- type WebhookDetails
- type WebhookInfo
- type WorkflowRevision
Constants ¶
const ( FieldIdentifierCluster = "CLUSTER" FieldIdentifierAWS = "AWS" FieldIdentifierGCP = "GCP" FieldIdentifierAzure = "AZURE" FieldIdentifierExternalData = "EXTERNAL_DATA" FieldIdentifierCommon = "COMMON" FieldIdentifierCustom = "CUSTOM" FieldIdentifierBusinessMapping = "BUSINESS_MAPPING" FieldIdentifierLabel = "LABEL" FieldIdentifierLabelV2 = "LABEL_V2" )
const ( TimeFilterOperatorNotIn = "NOT_IN" TimeFilterOperatorIn = "IN" TimeFilterOperatorEquals = "EQUALS" TimeFilterOperatorNotNull = "NOT_NULL" TimeFilterOperatorNull = "NULL" TimeFilterOperatorLike = "LIKE" TimeFilterOperatorGreaterThan = "GREATER_THAN" TimeFilterOperatorLessThan = "LESS_THAN" TimeFilterOperatorGreaterThanEqualsTo = "GREATER_THAN_EQUALS_TO" TimeFilterOperatorLessThanEqualsTo = "LESS_THAN_EQUALS_TO" TimeFilterOperatorAfter = "AFTER" TimeFilterOperatorBefore = "BEFORE" )
const ( TimeRangeLastMonth = "LAST_MONTH" TimeRangeCurrentMonth = "CURRENT_MONTH" )
const ( AnomTimeGroupByHour = "HOUR" AnomTimeGroupByDay = "DAY" AnomTimeGroupByMonth = "MONTH" AnomTimeGroupByWeek = "WEEK" AnomTimeGroupByQuarter = "QUARTER" AnomTimeGroupByYear = "YEAR" )
const ( AnomFilterOperatorNotIn = "NOT_IN" AnomFilterOperatorIn = "IN" AnomFilterOperatorEquals = "EQUALS" AnomFilterOperatorNotNull = "NOT_NULL" AnomFilterOperatorNull = "NULL" AnomFilterOperatorLike = "LIKE" AnomFilterOperatorSearch = "SEARCH" )
const ( AgregOperationTypeSum = "SUM" AgregOperationTypeMax = "MAX" AgregOperationTypeMin = "MIN" AgregOperationTypeAvg = "AVG" AgregOperationTypeCount = "COUNT" )
const ( AnomalyStatusActive = "ACTIVE" AnomalyStatusIgnored = "IGNORED" AnomalyStatusArchived = "ARCHIVED" AnomalyStatusResolved = "RESOLVED" )
const ( AnomalyFieldPerspectiveID = "PERSPECTIVE_ID" AnomalyFieldAnomalyID = "ANOMALY_ID" AnomalyFieldWorkload = "WORKLOAD" AnomalyFieldWorkloadType = "WORKLOAD_TYPE" AnomalyFieldClusterID = "CLUSTER_ID" AnomalyFieldClusterName = "CLUSTER_NAME" AnomalyFieldClusterNamespace = "CLUSTER_NAMESPACE" AnomalyFieldClusterNamespaceID = "CLUSTER_NAMESPACE_ID" AnomalyFieldClusterWorkload = "CLUSTER_WORKLOAD" AnomalyFieldClusterWorkloadID = "CLUSTER_WORKLOAD_ID" AnomalyFieldClusterNode = "CLUSTER_NODE" AnomalyFieldClusterPod = "CLUSTER_POD" AnomalyFieldClusterParentInstanceID = "CLUSTER_PARENT_INSTANCE_ID" AnomalyFieldClusterStorage = "CLUSTER_STORAGE" AnomalyFieldClusterApplication = "CLUSTER_APPLICATION" AnomalyFieldClusterEnvironment = "CLUSTER_ENVIRONMENT" AnomalyFieldClusterService = "CLUSTER_SERVICE" AnomalyFieldClusterCloudProvider = "CLUSTER_CLOUD_PROVIDER" AnomalyFieldClusterEcsService = "CLUSTER_ECS_SERVICE" AnomalyFieldClusterEcsServiceID = "CLUSTER_ECS_SERVICE_ID" AnomalyFieldClusterEcsTask = "CLUSTER_ECS_TASK" AnomalyFieldClusterEcsTaskID = "CLUSTER_ECS_TASK_ID" AnomalyFieldClusterEcsLaunchType = "CLUSTER_ECS_LAUNCH_TYPE" AnomalyFieldClusterEcsLaunchTypeID = "CLUSTER_ECS_LAUNCH_TYPE_ID" AnomalyFieldNamespace = "NAMESPACE" AnomalyFieldService = "SERVICE" AnomalyFieldServiceName = "SERVICE_NAME" AnomalyFieldGcpProduct = "GCP_PRODUCT" AnomalyFieldGcpProject = "GCP_PROJECT" AnomalyFieldGcpSkuID = "GCP_SKU_ID" AnomalyFieldGcpSkuDescription = "GCP_SKU_DESCRIPTION" AnomalyFieldAwsAccount = "AWS_ACCOUNT" AnomalyFieldAwsService = "AWS_SERVICE" AnomalyFieldAwsInstanceType = "AWS_INSTANCE_TYPE" AnomalyFieldAwsUsageType = "AWS_USAGE_TYPE" AnomalyFieldAwsBillingEntity = "AWS_BILLING_ENTITY" AnomalyFieldAwsLineItemType = "AWS_LINE_ITEM_TYPE" AnomalyFieldAzureSubscriptionGuid = "AZURE_SUBSCRIPTION_GUID" AnomalyFieldAzureMeterName = "AZURE_METER_NAME" AnomalyFieldAzureMeterCategory = "AZURE_METER_CATEGORY" AnomalyFieldAzureMeterSubcategory = "AZURE_METER_SUBCATEGORY" AnomalyFieldAzureResourceID = "AZURE_RESOURCE_ID" AnomalyFieldAzureResourceGroupName = "AZURE_RESOURCE_GROUP_NAME" AnomalyFieldAzureResourceType = "AZURE_RESOURCE_TYPE" AnomalyFieldAzureResource = "AZURE_RESOURCE" AnomalyFieldAzureServiceName = "AZURE_SERVICE_NAME" AnomalyFieldAzureServiceTier = "AZURE_SERVICE_TIER" AnomalyFieldAzureInstanceID = "AZURE_INSTANCE_ID" AnomalyFieldAzureSubscriptionName = "AZURE_SUBSCRIPTION_NAME" AnomalyFieldAzurePublisherName = "AZURE_PUBLISHER_NAME" AnomalyFieldAzurePublisherType = "AZURE_PUBLISHER_TYPE" AnomalyFieldAzureReservationID = "AZURE_RESERVATION_ID" AnomalyFieldAzureReservationName = "AZURE_RESERVATION_NAME" AnomalyFieldAzureFrequency = "AZURE_FREQUENCY" AnomalyFieldAzureChargeType = "AZURE_CHARGE_TYPE" AnomalyFieldAzurePricingModel = "AZURE_PRICING_MODEL" AnomalyFieldAzureBenefitName = "AZURE_BENEFIT_NAME" AnomalyFieldAzureResourceName = "AZURE_RESOURCE_NAME" AnomalyFieldCommonProduct = "COMMON_PRODUCT" AnomalyFieldCommonRegion = "COMMON_REGION" AnomalyFieldCommonNone = "COMMON_NONE" AnomalyFieldCloudProvider = "CLOUD_PROVIDER" AnomalyFieldStatus = "STATUS" AnomalyFieldRegion = "REGION" AnomalyFieldAnomalyTime = "ANOMALY_TIME" AnomalyFieldActualCost = "ACTUAL_COST" AnomalyFieldExpectedCost = "EXPECTED_COST" AnomalyFieldAnomalousSpend = "ANOMALOUS_SPEND" AnomalyFieldCostImpact = "COST_IMPACT" AnomalyFieldAll = "ALL" AnomalyFieldAnomalousSpendPercent = "ANOMALOUS_SPEND_PERCENTAGE" AnomalyFieldTotalCost = "TOTAL_COST" AnomalyFieldIdleCost = "IDLE_COST" AnomalyFieldUnallocatedCost = "UNALLOCATED_COST" AnomalyFieldRuleName = "RULE_NAME" AnomalyFieldRuleSetName = "RULE_SET_NAME" AnomalyFieldPotentialSavings = "POTENTIAL_SAVINGS" AnomalyFieldLastEvaluatedAt = "LAST_EVALUATED_AT" AnomalyFieldAnomalyStatus = "ANOMALY_STATUS" AnomalyFieldRecommendationsCount = "RECOMMENDATIONS_COUNT" AnomalyFieldActualAmount = "ACTUAL_AMOUNT" AnomalyFieldCriticality = "CRITICALITY" AnomalyFieldDuration = "DURATION" AnomalyFieldUpdatedAt = "UPDATED_AT" AnomalyFieldUpdatedBy = "UPDATED_BY" AnomalyFieldUpdatedAtRelative = "UPDATED_AT_RELATIVE" )
const ( AnomalyFeedbackTrueAnomaly = "TRUE_ANOMALY" AnomalyFeedbackTrueExpectedAnomaly = "TRUE_EXPECTED_ANOMALY" AnomalyFeedbackFalseAnomaly = "FALSE_ANOMALY" AnomalyFeedbackNotResponded = "NOT_RESPONDED" )
const ( CommitmentType string = "Commitment Type" CommitmentInstanceFamily string = "Instance Family" CommitmentRegion string = "Regions" )
const ( CommitmentCoverageStatusWellOptimized string = "Well Optimized" CommitmentCoverageStatusGood string = "Good Coverage" CommitmentCoverageStatusAdequate string = "Adequate Coverage" )
const ( PeriodTypeHour string = "HOUR" PeriodTypeDay string = "DAY" PeriodTypeMonth string = "MONTH" PeriodTypeWeek string = "WEEK" PeriodTypeQuarter string = "QUARTER" PeriodTypeYear string = "YEAR" )
const ( SortTypeName string = "NAME" SortTypeLastEdit string = "LAST_EDIT" )
const ( SortOrderAsc string = "ASCENDING" SortOrderDesc string = "DESCENDING" )
const ( TimeFilterLast7 = "LAST_7" // It doesn't work using "LAST_7_DAYS" TimeFilterThisMonth = "THIS_MONTH" TimeFilterLast30Days = "LAST_30_DAYS" TimeFilterThisQuarter = "THIS_QUARTER" TimeFilterThisYear = "THIS_YEAR" TimeFilterLastMonth = "LAST_MONTH" TimeFilterLastQuarter = "LAST_QUARTER" TimeFilterLastYear = "LAST_YEAR" TimeFilterLast3Months = "LAST_3_MONTHS" TimeFilterLast6Months = "LAST_6_MONTHS" TimeFilterLast12Months = "LAST_12_MONTHS" TimeFilterPreviousToCurrentMonth = "PREVIOUS_TO_CURRENT_MONTH" // From first day of previous month to last day of current month )
const ( GridGroupByCostCategory = "business_mapping" GridGroupByAWSAccount = "awsUsageaccountid" GridGroupByAWSBillingEntity = "awsBillingEntity" GridGroupByAWSInstanceType = "awsInstancetype" GridGroupByAWSLineItemType = "awsLineItemType" GridGroupByAWSPayerAccount = "awspayeraccountid" GridGroupByAWSService = "awsServicecode" GridGroupByAWSUsageType = "awsUsageType" GridGroupByRegion = "region" GridGroupByProduct = "product" GridGroupByCloudProvider = "cloudProvider" GridGroupByLabel = "label" GridGroupByLabelV2 = "label_v2" GridGroupByNone = "none" )
const ( ValueTypeCostCategory = "business_mapping" ValueTypeAWSAccount = "awsUsageaccountid" ValueTypeAWSBillingEntity = "awsBillingEntity" ValueTypeAWSInstanceType = "awsInstancetype" ValueTypeAWSLineItemType = "awsLineItemType" ValueTypeAWSPayerAccount = "awspayeraccountid" ValueTypeAWSService = "awsServicecode" ValueTypeAWSUsageType = "awsUsageType" ValueTypeRegion = "region" ValueTypeProduct = "product" ValueTypeCloudProvider = "cloudProvider" ValueTypeLabel = "label" ValueTypeLabelKey = "label_key" ValueTypeLabelV2 = "label_v2" ValueTypeLabelV2Key = "label_v2_key" )
const ( TimeGroupByDay = "DAY" TimeGroupByWeek = "WEEK" TimeGroupByMonth = "MONTH" )
const ( SortByTime string = "TIME" SortByCost string = "COST" SortByClusterCost string = "CLUSTER_COST" SortByName string = "NAME" )
*************************** Perspective List Detail ***************************
const ( SortOrderAscending string = "ASCENDING" SortOrderDescending string = "DESCENDING" )
const ( FilterByAws string = "AWS" FilterByAzure string = "AZURE" FilterByGcp string = "GCP" FilterByCluster string = "CLUSTER" FilterByDefault string = "DEFAULT" )
const ( PeriodDaily string = "DAILY" PeriodWeekly string = "WEEKLY" PeriodMonthly string = "MONTHLY" PeriodQuarterly string = "QUARTERLY" PeriodYearly string = "YEARLY" )
const ( TimeRangeTypeLast7Days string = "LAST_7" TimeRangeTypeLast30Days string = "LAST_30_DAYS" TimeRangeTypeLast30 string = "LAST_30" TimeRangeTypeLastMonth string = "LAST_MONTH" TimeRangeTypeCurrentMonth string = "CURRENT_MONTH" TimeRangeTypeCustom string = "CUSTOM" )
const ( ViewTypeSample string = "SAMPLE" ViewTypeCustomer string = "CUSTOMER" ViewTypeDefault string = "DEFAULT" )
const ( ViewStateDraft string = "DRAFT" ViewStateCompleted string = "COMPLETED" )
const ( AwsCostAmortised string = "AMORTISED" AwsCostNetAmortised string = "NET_AMORTISED" AwsCostBlended string = "BLENDED" AwsCostUnblended string = "UNBLENDED" AwsCostEffective string = "EFFECTIVE" )
const ( DataSourceCluster string = "CLUSTER" DataSourceAws string = "AWS" DataSourceGcp string = "GCP" DataSourceAzure string = "AZURE" DataSourceExternalData string = "EXTERNAL_DATA" DataSourceCommon string = "COMMON" DataSourceCustom string = "CUSTOM" DataSourceBusinessMapping string = "BUSINESS_MAPPING" DataSourceLabel string = "LABEL" DataSourceLabelV2 string = "LABEL_V2" )
const ( AzureCostTypeActual string = "ACTUAL" AzureCostTypeAmortized string = "AMORTIZED" )
const ( FieldIdCluster string = "CLUSTER" FieldIdAws string = "AWS" FieldIdGcp string = "GCP" FieldIdAzure string = "AZURE" FieldIdExternalData string = "EXTERNAL_DATA" FieldIdCommon string = "COMMON" FieldIdCustom string = "CUSTOM" FieldIdBusinessMapping string = "BUSINESS_MAPPING" FieldIdLabel string = "LABEL" FieldIdLabelV2 string = "LABEL_V2" )
const ( ConditionOperatorIn = "IN" ConditionOperatorNotIn = "NOT_IN" ConditionOperatorEquals = "EQUALS" ConditionOperatorNotNull = "NOT_NULL" ConditionOperatorNull = "NULL" ConditionOperatorLike = "LIKE" )
const ( GraphTypeStackedTimeSeries = "STACKED_TIME_SERIES" GraphTypeStackedLineChart = "STACKED_LINE_CHART" )
const ( GranularityDay = "DAY" GranularityWeek = "WEEK" GranularityMonth = "MONTH" )
const ( RecommendationStateApplied = "APPLIED" RecommendationStateOpen = "OPEN" RecommendationStateIgnored = "IGNORED" )
const ( ResourceTypeWorkload = "WORKLOAD" ResourceTypeNodePool = "NODE_POOL" ResourceTypeECSService = "ECS_SERVICE" ResourceTypeEC2Instance = "EC2_INSTANCE" ResourceTypeGovernance = "GOVERNANCE" ResourceTypeAzureInstance = "AZURE_INSTANCE" )
const ( TicketPlatformJira = "Jira" TicketPlatformServiceNow = "Servicenow" )
Values received from the settings API
const ( EntityKindDefault string = "component,api,resource" EntityKindApi string = "api" EntityKindComponent string = "component" EntityKindEnvironment string = "environment" EntityKindEnvironmentblueprint string = "environmentblueprint" EntityKindGroup string = "group" EntityKindResource string = "resource" EntityKindUser string = "user" EntityKindWorkflow string = "workflow" )
const ( ScopeLevelDefault string = "ALL" ScopeLevelAccount string = "ACCOUNT" ScopeLevelOrg string = "ORG" ScopeLevelProject string = "PROJECT" )
const ( ScorecardDetailsWeightageStrategyCUSTOM string = "CUSTOM" ScorecardDetailsWeightageStrategyEQUALWEIGHTS string = "EQUAL_WEIGHTS" )
const ( ChecksSortOrderAsc string = "ASC" ChecksSortOrderDesc string = "DESC" )
const ( ChecksSortTypeName string = "name" ChecksSortTypeDescription string = "description" ChecksSortTypeDataSource string = "data_source" )
const AnomalyFilterType = "Anomaly"
Variables ¶
var ( ValueTypes = []string{ ValueTypeCostCategory, ValueTypeAWSAccount, ValueTypeAWSBillingEntity, ValueTypeAWSInstanceType, ValueTypeAWSLineItemType, ValueTypeAWSPayerAccount, ValueTypeAWSService, ValueTypeAWSUsageType, ValueTypeRegion, ValueTypeProduct, ValueTypeCloudProvider, ValueTypeLabel, ValueTypeLabelKey, ValueTypeLabelV2, ValueTypeLabelV2Key, } TimeFilterValues = []string{ TimeFilterLast7, TimeFilterThisMonth, TimeFilterLast30Days, TimeFilterThisQuarter, TimeFilterThisYear, TimeFilterLastMonth, TimeFilterLastQuarter, TimeFilterLastYear, TimeFilterLast3Months, TimeFilterLast6Months, TimeFilterLast12Months, TimeFilterPreviousToCurrentMonth, } )
var AllowedActions = map[string]struct{}{
"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": {},
}
var AllowedPrincipalTypes = map[string]struct{}{
"USER": {},
"USER_GROUP": {},
"SERVICE_ACCOUNT": {},
}
var AllowedScopeLevels = map[string]struct{}{
"account": {},
"organization": {},
"project": {},
}
Functions ¶
func FormatUnixMillisToMMDDYYYY ¶
FormatUnixMillisToMMDDYYYY converts Unix timestamp in milliseconds to MM/DD/YYYY format
func FormatUnixMillisToRFC3339 ¶
FormatUnixMillisToRFC3339 converts Unix timestamp in milliseconds to RFC3339 format
Types ¶
type AccessControlOutput ¶
type AccessControlPrincipal ¶
type AccountInfo ¶
type AccountInfo struct {
UUID string `json:"uuid,omitempty"`
AccountName string `json:"accountName,omitempty"`
CompanyName string `json:"companyName,omitempty"`
DefaultExperience string `json:"defaultExperience,omitempty"`
CreatedFromNG bool `json:"createdFromNG,omitempty"`
NextGenEnabled bool `json:"nextGenEnabled,omitempty"`
}
type ActionData ¶
type ActionData struct {
Name string `json:"name"`
}
type ActivityDetails ¶
type ActivityDetails struct {
LastActivityTime int64 `json:"lastActivityTime"`
}
ActivityDetails represents the activity information of a connector.
type ActivityDetailsResponse ¶
type ActivityDetailsResponse struct {
// Human-readable timestamp instead of Unix timestamp
LastActivityTimeStr string `json:"last_activity_time"`
}
ActivityDetailsResponse extends ActivityDetails with human-readable timestamp fields
func ToActivityDetails ¶
func ToActivityDetails(a ActivityDetails) ActivityDetailsResponse
ToActivityDetails converts ActivityDetails adding RFC3339 time string
type AuditAuthenticationInfo ¶
type AuditAuthenticationInfo struct {
Principal AuditPrincipal `json:"principal"`
Labels AuditAuthenticationInfoLabels `json:"labels,omitempty"`
}
type AuditListItem ¶
type AuditListItem struct {
AuditID string `json:"auditId,omitempty"`
InsertId string `json:"insertId,omitempty"`
Resource AuditResource `json:"resource,omitempty"`
Action string `json:"action,omitempty"`
Module string `json:"module,omitempty"`
Timestamp int64 `json:"timestamp,omitempty"`
AuthenticationInfo AuditAuthenticationInfo `json:"authenticationInfo,omitempty"`
ResourceScope AuditResourceScope `json:"resourceScope,omitempty"`
Time string
}
type AuditOutput ¶
type AuditOutput[T any] struct { Status string `json:"status,omitempty"` Data AuditOutputData[T] `json:"data,omitempty"` }
type AuditOutputData ¶
type AuditOutputData[T any] struct { PageItemCount int `json:"pageItemCount,omitempty"` PageSize int `json:"pageSize,omitempty"` Content []T `json:"content,omitempty"` PageIndex int `json:"pageIndex,omitempty"` HasNext bool `json:"hasNext,omitempty"` PageToken string `json:"pageToken,omitempty"` TotalItems int `json:"totalItems,omitempty"` TotalPages int `json:"totalPages,omitempty"` }
type AuditPrincipal ¶
type AuditResource ¶
type AuditResource struct {
Type string `json:"type"`
Identifier string `json:"identifier"`
Labels AuditResourceLabels `json:"labels,omitempty"`
}
type AuditResourceLabels ¶
type AuditResourceLabels struct {
ResourceName string `json:"resourceName,omitempty"`
}
type AuditResourceScope ¶
type AuditYamlData ¶
AuditYamlData contains the old and new YAML content for an audit event
type AuditYamlResponse ¶
type AuditYamlResponse struct {
Status string `json:"status"`
Data AuditYamlData `json:"data"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId"`
}
AuditYamlResponse represents the response from the audit YAML API
type CCMAwsPreferences ¶
type CCMAzureViewPreferences ¶
type CCMAzureViewPreferences struct {
CostType string `json:"costType"`
}
type CCMBaseResponse ¶
type CCMBaseResponse struct {
Status string `json:"state,omitempty"`
Message string `json:"message,omitempty"`
MetaData map[string]any `json:"metaData,omitempty"`
CorrelationID string `json:"correlation_id,omitempty"`
Error []CCMError `json:"error,omitempty"`
}
CCMBaseResponse represents a basic ccm response. CEView represents a basic ccm response. The `data` field contains the response data.
type CCMBusinessMapping ¶
type CCMBusinessMapping struct {
UUID string `json:"uuid"`
Name string `json:"name"`
AccountID string `json:"accountId"`
CostTargets []CCMCostTarget `json:"costTargets"`
UnallocatedCost CCMUnallocatedCost `json:"unallocatedCost"`
DataSources []string `json:"dataSources"`
CreatedAt int64 `json:"createdAt"`
LastUpdatedAt int64 `json:"lastUpdatedAt"`
CreatedBy CCMUser `json:"createdBy"`
LastUpdatedBy CCMUser `json:"lastUpdatedBy"`
}
type CCMCommitmentAPIFilter ¶
type CCMCommitmentAPIFilter struct {
CloudAccounts []string `json:"cloud_account_ids,omitempty"`
Service string `json:"service,omitempty"`
IsHarnessManaged *bool `json:"is_harness_managed,omitempty"`
GroupBy *string `json:"group_by,omitempty"`
NetAmortizedCost *bool `json:"net_amortized,omitempty"`
}
type CCMCommitmentOptions ¶
type CCMCommitmentOptions struct {
AccountIdentifier *string `json:"accountIdentifier,omitempty"`
CloudAccountIDs []string `json:"cloudAccountId,omitempty"`
Service *string `json:"service,omitempty"`
StartDate *string `json:"startDate,omitempty"`
EndDate *string `json:"endDate,omitempty"`
IsHarnessManaged *bool `json:"isHarnessManaged,omitempty"`
GroupBy *string `json:"groupBy,omitempty"`
IsNetAmortizedCost *bool `json:"net_amortized,omitempty"`
}
type CCMCostByTime ¶
type CCMCostCategory ¶
type CCMCostCategory struct {
MetaData map[string]interface{} `json:"metaData"`
Resource CCMBusinessMapping `json:"resource"`
ResponseMessages []CCMResponseMessage `json:"responseMessages"`
}
*************************** Get Cost Category *************************** CCMCostCategory represents the details of a cost category in CCM
type CCMCostCategoryDetailList ¶
type CCMCostCategoryDetailList struct {
MetaData map[string]interface{} `json:"metaData"`
Resource CCMCostCategoryResource `json:"resource"`
ResponseMessages []CCMResponseMessage `json:"responseMessages"`
}
type CCMCostCategoryList ¶
type CCMCostCategoryList struct {
CCMBaseResponse
Data []string `json:"data,omitempty"`
}
CcmCostCategoryList represents a list of cost categories in CCM
type CCMCostCategoryResource ¶
type CCMCostCategoryResource struct {
BusinessMappings []CCMBusinessMapping `json:"businessMappings"`
TotalCount int `json:"totalCount"`
}
type CCMCostTarget ¶
type CCMCreatePerspectiveOptions ¶
type CCMCreatePerspectiveOptions struct {
AccountId string
Clone bool
UpdateTotalCost bool
Body CCMPerspective
}
*************************** Create perspective ***************************
type CCMCreatePerspectiveResponse ¶
type CCMCreatePerspectiveResponse struct {
CCMBaseResponse
Data CCMPerspective `json:"data"`
}
type CCMCurrencyPreference ¶
type CCMError ¶
type CCMError struct {
FieldId string `json:"fieldId,omitempty"`
Error string `json:"error,omitempty"`
}
Response error
type CCMException ¶
type CCMException struct {
StackTrace []CCMStackTraceElement `json:"stackTrace"`
Message string `json:"message"`
Suppressed []CCMSuppressed `json:"suppressed"`
LocalizedMessage string `json:"localizedMessage"`
}
type CCMGcpPreferences ¶
type CCMGetCostCategoryOptions ¶
type CCMGetCostCategoryOptions struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
CostCategoryId string `json:"id,omitempty"`
}
CCMGetCostCategoryOptions represents options for listing cost categories
type CCMGetLastPeriodCostPerspectiveOptions ¶
type CCMGetLastPeriodCostPerspectiveOptions struct {
CCMGetPerspectiveOptions
StartTime int64
Period string
}
*************************** Get Last period cost perspective ***************************
type CCMGetLastTwelveMonthsCostPerspectiveOptions ¶
type CCMGetLastTwelveMonthsCostPerspectiveOptions = CCMGetLastPeriodCostPerspectiveOptions
*************************** Get Last twelve months cost perspective ***************************
type CCMGetPerspectiveOptions ¶
*************************** Get Perspective Detail ***************************
type CCMGraphQLError ¶
type CCMGraphQLError struct {
Message string `json:"message"`
Locations []CCMGraphQLErrorLocation `json:"locations"`
Extensions CCMGraphQLErrorExtensions `json:"extensions"`
}
type CCMGraphQLErrorExtensions ¶
type CCMGraphQLErrorExtensions struct {
Classification string `json:"classification"`
}
type CCMGraphQLErrorLocation ¶
type CCMGraphQLFilters ¶
type CCMGroupBy ¶
type CCMIssueTypeInfo ¶
type CCMJiraIssueType ¶
type CCMJiraIssueTypesList ¶
type CCMJiraIssueTypesList struct {
CCMBaseResponse
Data []CCMJiraIssueType `json:"data,omitempty"`
}
type CCMJiraIssueTypesResponse ¶
type CCMJiraIssueTypesResponse struct {
CCMBaseResponse
Data CCMJiraProjects `json:"data,omitempty"`
}
type CCMJiraProjectDetail ¶
type CCMJiraProjectDetail struct {
Id string `json:"id"`
Key string `json:"key"`
Name string `json:"name"`
IssueTypes map[string]CCMJiraIssueType `json:"issuetypes"`
}
type CCMJiraProjects ¶
type CCMJiraProjects struct {
Projects map[string]CCMJiraProjectDetail `json:"projects"`
}
type CCMKeyValue ¶
type CCMLastPeriodCostPerspective ¶
type CCMLastPeriodCostPerspective struct {
CCMBaseResponse
Data float64 `json:"data,omitempty"`
}
type CCMLastTwelveMonthsCostPerspective ¶
type CCMLastTwelveMonthsCostPerspective struct {
CCMBaseResponse
Data []CCMCostByTime `json:"data,omitempty"`
}
type CCMListCostCategoriesDetailOptions ¶
type CCMListCostCategoriesDetailOptions struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
SearchKey string `json:"searchKey,omitempty"`
SortType string `json:"sortType,omitempty"` // Enum: "NAME", "LAST_EDIT"
SortOrder string `json:"sortOrder,omitempty"` // Enum: "ASCENDING", "DESCENDING"
CCMPaginationOptions
}
type CCMListCostCategoriesOptions ¶
type CCMListCostCategoriesOptions struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
CostCategory string `json:"costCategory,omitempty"`
SearchTerm string `json:"search,omitempty"`
}
CcmCostCategoriesOptions represents options for listing cost categories
type CCMListLabelsV2KeysOptions ¶
type CCMListLabelsV2KeysOptions struct {
AccountId string `json:"account_id"`
TimeFilter string `json:"time_filter"`
Limit int32 `json:"limit"`
Offset int32 `json:"offset"`
}
Options for listing labelsV2 keys
type CCMListLabelsV2KeysResponse ¶
type CCMListLabelsV2KeysResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
PerspectiveFilters CCMPerspectiveFilterValues `json:"perspectiveFilters"`
} `json:"data"`
}
Response for listing labelsV2 keys
type CCMMetadata ¶
type CCMMetadata struct {
K8sClusterConnectorPresent bool `json:"k8sClusterConnectorPresent"`
CloudDataPresent bool `json:"cloudDataPresent"`
AwsConnectorsPresent bool `json:"awsConnectorsPresent"`
GcpConnectorsPresent bool `json:"gcpConnectorsPresent"`
AzureConnectorsPresent bool `json:"azureConnectorsPresent"`
ApplicationDataPresent bool `json:"applicationDataPresent"`
InventoryDataPresent bool `json:"inventoryDataPresent"`
ClusterDataPresent bool `json:"clusterDataPresent"`
ExternalDataPresent bool `json:"externalDataPresent"`
IsSampleClusterPresent bool `json:"isSampleClusterPresent"`
DefaultAzurePerspectiveId string `json:"defaultAzurePerspectiveId"`
DefaultAwsPerspectiveId string `json:"defaultAwsPerspectiveId"`
DefaultGcpPerspectiveId string `json:"defaultGcpPerspectiveId"`
DefaultClusterPerspectiveId string `json:"defaultClusterPerspectiveId"`
DefaultExternalDataPerspectiveId string `json:"defaultExternalDataPerspectiveId"`
ShowCostOverview bool `json:"showCostOverview"`
CurrencyPreference CCMCurrencyPreference `json:"currencyPreference"`
Typename string `json:"__typename"`
}
type CCMMetadataResponse ¶
type CCMMetadataResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
CCMMetadata CCMMetadata `json:"ccmMetaData"`
} `json:"data"`
}
type CCMOverview ¶
type CCMOverview struct {
CostPerDay []TimeSeriesDataPoints `json:"costPerDay,omitempty"`
TotalCost float64 `json:"totalCost,omitempty"`
TotalCostTrend float64 `json:"totalCostTrend,omitempty"`
RecommendationsCount int32 `json:"recommendationsCount,omitempty"`
}
CCMOverview represents the Overview data from a CCM Overview
type CCMPaginationOptions ¶
type CCMPerspective ¶
type CCMPerspective struct {
UUID string `json:"uuid"`
Name string `json:"name"`
AccountId string `json:"accountId"`
FolderId string `json:"folderId"`
ViewVersion string `json:"viewVersion"`
ViewTimeRange CCMViewTimeRange `json:"viewTimeRange"`
ViewRules []CCMViewRule `json:"viewRules"`
DataSources []string `json:"dataSources"`
ViewVisualization CCMViewVisualization `json:"viewVisualization"`
ViewPreferences CCMViewPreferences `json:"viewPreferences"`
ViewType string `json:"viewType"`
ViewState string `json:"viewState"`
TotalCost float64 `json:"totalCost"`
CreatedAt int64 `json:"createdAt"`
LastUpdatedAt int64 `json:"lastUpdatedAt"`
CreatedBy CCMUser `json:"createdBy"`
LastUpdatedBy CCMUser `json:"lastUpdatedBy"`
}
type CCMPerspectiveBudget ¶
type CCMPerspectiveBudget struct {
ID string `json:"id"`
Name string `json:"name"`
BudgetAmount float64 `json:"budgetAmount"`
ActualCost float64 `json:"actualCost"`
TimeLeft int `json:"timeLeft"`
TimeUnit string `json:"timeUnit"`
TimeScope string `json:"timeScope"`
Period string `json:"period"`
FolderID string `json:"folderId"`
Typename string `json:"__typename"`
}
type CCMPerspectiveBudgetResponse ¶
type CCMPerspectiveBudgetResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
BudgetSummaryList []CCMPerspectiveBudget `json:"budgetSummaryList"`
} `json:"data"`
}
type CCMPerspectiveDetail ¶
type CCMPerspectiveDetail struct {
CCMBaseResponse
Data CCMPerspective `json:"data"`
}
type CCMPerspectiveFilterValuesOptions ¶
type CCMPerspectiveFilterValuesOptions struct {
AccountId string `json:"account_id"`
ViewId string `json:"view_id"`
TimeFilter string `json:"time_filter"`
ValueType string `json:"value_type"`
ValueSubType string `json:"value_sub_type"`
Limit int32 `json:"limit"`
Offset int32 `json:"offset"`
IsClusterHourlyData bool
}
type CCMPerspectiveFilterValuesResponse ¶
type CCMPerspectiveFilterValuesResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
PerspectiveFilters CCMPerspectiveFilterValues `json:"perspectiveFilters"`
} `json:"data"`
}
type CCMPerspectiveForecastCost ¶
type CCMPerspectiveForecastCost struct {
Cost CCMStatsInfo `json:"cost"`
Typename string `json:"__typename"`
}
type CCMPerspectiveGridDataWrapper ¶
type CCMPerspectiveGridDataWrapper struct {
PerspectiveGrid CCMPerspectiveGridEntityStats `json:"perspectiveGrid"`
PerspectiveTotalCount int `json:"perspectiveTotalCount"`
}
type CCMPerspectiveGridEntityStats ¶
type CCMPerspectiveGridEntityStats struct {
Data []CCMPerspectiveGridDataPoint `json:"data"`
Typename string `json:"__typename"`
}
type CCMPerspectiveGridOptions ¶
type CCMPerspectiveGridOptions struct {
AccountId string `json:"account_id"`
ViewId string `json:"view_id"`
TimeFilter string `json:"time_filter"`
IsClusterOnly bool `json:"is_cluster_only"`
IsClusterHourlyData bool `json:"is_cluster_hourly_data"`
Limit int32 `json:"limit"`
Offset int32 `json:"offset"`
GroupBy map[string]any `json:"group_by"`
IncludeOthers bool `json:"include_others"`
IncludeAnomalies bool `json:"include_anomalies"`
IncludeUnallocatedCost bool `json:"include_unallocated_cost"`
AwsIncludeDiscounts bool `json:"aws_include_discounts"`
AwsIncludeCredits bool `json:"aws_include_credits"`
AwsIncludeRefunds bool `json:"aws_include_refunds"`
AwsIncludeTaxes bool `json:"aws_include_taxes"`
AwsCost string `json:"aws_cost"`
Filters CCMGraphQLFilters
KeyValueFilters CCMGraphQLKeyValueFilters
}
type CCMPerspectiveGridResponse ¶
type CCMPerspectiveGridResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data CCMPerspectiveGridDataWrapper `json:"data"`
}
type CCMPerspectiveRecommendationsOptions ¶
type CCMPerspectiveRecommendationsOptions struct {
AccountId string `json:"account_id"`
ViewId string `json:"view_id"`
TimeFilter string `json:"time_filter"`
Limit int32 `json:"limit"`
Offset int32 `json:"offset"`
MinSaving int `json:"min_saving"`
Filters CCMGraphQLFilters
KeyValueFilters CCMGraphQLKeyValueFilters
RecommendationStates []string
}
type CCMPerspectiveRecommendationsResponse ¶
type CCMPerspectiveRecommendationsResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
RecommendationStatsV2 CCMRecommendationStatsV2 `json:"recommendationStatsV2"`
RecommendationsV2 CCMRecommendationsV2 `json:"recommendationsV2"`
} `json:"data"`
}
type CCMPerspectiveReference ¶
type CCMPerspectiveSummaryWithBudgetOptions ¶
type CCMPerspectiveSummaryWithBudgetOptions = CCMPerspectiveGridOptions
type CCMPerspectiveSummaryWithBudgetResponse ¶
type CCMPerspectiveSummaryWithBudgetResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
PerspectiveTrendStats CCMPerspectiveTrendStats `json:"perspectiveTrendStats"`
PerspectiveForecastCost CCMPerspectiveForecastCost `json:"perspectiveForecastCost"`
} `json:"data"`
}
type CCMPerspectiveTimeSeriesOptions ¶
type CCMPerspectiveTimeSeriesOptions struct {
CCMPerspectiveGridOptions
TimeGroupBy string `json:"time_group_by"`
}
type CCMPerspectiveTimeSeriesResponse ¶
type CCMPerspectiveTimeSeriesResponse struct {
Errors []CCMGraphQLError `json:"errors"`
Data struct {
PerspectiveTimeSeriesStats struct {
Stats []CCMPerspectiveTimeSeriesStat `json:"stats"`
} `json:"perspectiveTimeSeriesStats"`
} `json:"data"`
}
type CCMPerspectiveTimeSeriesStat ¶
type CCMPerspectiveTimeSeriesStat struct {
Values []CCMPerspectiveTimeSeriesValue `json:"values"`
}
type CCMPerspectiveTimeSeriesValue ¶
type CCMPerspectiveTimeSeriesValue struct {
Key CCMPerspectiveReference `json:"key"`
Value float64 `json:"value"`
Typename string `json:"__typename"`
}
type CCMPerspectiveTrendStats ¶
type CCMPerspectiveTrendStats struct {
Cost CCMStatsInfo `json:"cost"`
IdleCost CCMStatsInfo `json:"idleCost"`
UnallocatedCost CCMStatsInfo `json:"unallocatedCost"`
UtilizedCost CCMStatsInfo `json:"utilizedCost"`
EfficiencyScoreStats *CCMStatsInfo `json:"efficiencyScoreStats"`
Typename string `json:"__typename"`
}
type CCMPerspectiveView ¶
type CCMPerspectiveViewList ¶
type CCMPerspectiveViewList struct {
TotalCount int `json:"totalCount"`
Views []CCMPerspectiveView `json:"views"`
}
type CCMPerspectivesDetailList ¶
type CCMPerspectivesDetailList struct {
CCMBaseResponse
Data CCMPerspectiveViewList `json:"data,omitempty"`
}
type CCMRecommendationDetailOptions ¶
type CCMRecommendationDetailOptions struct {
AccountIdentifier string `json:"accountIdentifier"`
RecommendationId string `json:"id"`
From string `json:"from,omitempty"`
To string `json:"to,omitempty"`
BufferPercentage int64 `json:"bufferPercentage,omitempty"` // Only for ECS Service recommendations
}
type CCMRecommendationsV2 ¶
type CCMReference ¶
type CCMReference struct {
Id string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Type string `json:"type,omitempty"`
}
CCMReference represents a reference to a CCM entity
type CCMResponseMessage ¶
type CCMSharedCost ¶
type CCMSharedCost struct {
}
type CCMStackTraceElement ¶
type CCMStackTraceElement struct {
ClassLoaderName *string `json:"classLoaderName"`
ModuleName *string `json:"moduleName"`
ModuleVersion *string `json:"moduleVersion"`
MethodName *string `json:"methodName"`
FileName *string `json:"fileName"`
LineNumber *int `json:"lineNumber"`
NativeMethod *bool `json:"nativeMethod"`
ClassName *string `json:"className"`
}
type CCMStatsInfo ¶
type CCMSuppressed ¶
type CCMSuppressed struct {
StackTrace []CCMStackTraceElement `json:"stackTrace"`
Message string `json:"message"`
LocalizedMessage string `json:"localizedMessage"`
}
type CCMTicketDetails ¶
type CCMTicketDetails struct {
RecommendationId string `json:"recommendationId"`
ResourceType string `json:"resourceType"`
ConnectorRef string `json:"connectorRef"`
ProjectKey string `json:"projectKey,omitempty"`
TicketType string `json:"ticketType"`
Fields map[string]any `json:"fields"`
Platform string // TicketPlatform
}
type CCMTicketToolSetting ¶
type CCMTicketToolSetting struct {
Identifier string `json:"identifier"`
Name string `json:"name"`
OrgIdentifier *string `json:"orgIdentifier"`
ProjectIdentifier *string `json:"projectIdentifier"`
Category string `json:"category"`
GroupIdentifier string `json:"groupIdentifier"`
ValueType string `json:"valueType"`
AllowedValues *[]string `json:"allowedValues"`
AllowOverrides bool `json:"allowOverrides"`
Value string `json:"value"`
DefaultValue *string `json:"defaultValue"`
SettingSource string `json:"settingSource"`
IsSettingEditable bool `json:"isSettingEditable"`
AllowedScopes []string `json:"allowedScopes"`
}
type CCMTicketToolSettings ¶
type CCMTicketToolSettings struct {
Setting CCMTicketToolSetting `json:"setting"`
LastModifiedAt int64 `json:"lastModifiedAt"`
}
type CCMTicketToolSettingsResponse ¶
type CCMTicketToolSettingsResponse struct {
CCMBaseResponse
Data []CCMTicketToolSettings `json:"data,omitempty"`
}
type CCMUnallocatedCost ¶
type CCMViewCondition ¶
type CCMViewCondition struct {
Type string `json:"type"`
ViewField CCMViewField `json:"viewField"`
ViewOperator string `json:"viewOperator"`
Values []string `json:"values"`
}
type CCMViewField ¶
type CCMViewPreferences ¶
type CCMViewPreferences struct {
ShowAnomalies bool `json:"showAnomalies"`
IncludeOthers bool `json:"includeOthers"`
IncludeUnallocatedCost bool `json:"includeUnallocatedCost"`
AwsPreferences CCMAwsPreferences `json:"awsPreferences"`
GcpPreferences CCMGcpPreferences `json:"gcpPreferences"`
AzureViewPreferences CCMAzureViewPreferences `json:"azureViewPreferences"`
}
type CCMViewRule ¶
type CCMViewRule struct {
ViewConditions []CCMViewCondition `json:"viewConditions"`
}
type CCMViewTimeRange ¶
type CCMViewVisualization ¶
type CCMViewVisualization struct {
Granularity string `json:"granularity"`
GroupBy CCMGroupBy `json:"groupBy"`
ChartType string `json:"chartType"`
}
type CEView ¶
type CEView struct {
CCMBaseResponse
Data CCMOverview `json:"data,omitempty"`
}
CEView represents a basic ccm response. The `data` field contains the response data.
type CcmDataPoint ¶
type CcmDataPoint struct {
Key CCMReference `json:"key,omitempty"`
Value float64 `json:"value,omitempty"`
}
CcmDataPoint represents a data point in the time series
type ChaosData ¶
type ChaosData struct {
FaultData *FaultData `json:"faultData,omitempty"`
ProbeData *ProbeData `json:"probeData,omitempty"`
ActionData *ActionData `json:"actionData,omitempty"`
}
type ChaosExecutionNode ¶
type ChaosExecutionNode struct {
Name string `json:"stepName"`
StreamID string `json:"streamID"`
Status string `json:"status"`
StepType string `json:"stepType"`
Spec string `json:"spec"`
ChaosData *ChaosData `json:"chaosData,omitempty"`
ErrorData *ErrorData `json:"errorData,omitempty"`
EstimatedTime int `json:"estimatedTime"`
StartedAt int64 `json:"startedAt"`
LastUpdatedAt int64 `json:"lastUpdatedAt"`
FinishedAt int64 `json:"finishedAt"`
Duration int64 `json:"duration"`
}
type ChaosExecutionResponse ¶
type ChaosExecutionResponse struct {
Name string `json:"stepName"`
ExperimentID string `json:"experimentID"`
ExperimentRunID string `json:"experimentRunID"`
Status string `json:"status"`
StepType string `json:"stepType"`
RunSequence int `json:"runSequence"`
StartedAt int64 `json:"startedAt"`
LastUpdatedAt int64 `json:"lastUpdatedAt"`
FinishedAt int64 `json:"finishedAt"`
Duration int64 `json:"duration"`
Nodes []ChaosExecutionNode `json:"nodes"`
InfraID string `json:"infraID"`
ResiliencyScore *float64 `json:"resiliencyScore"`
ManifestVersion string `json:"manifestVersion"`
}
type ChaosExperimentInputsetSpec ¶
type ChaosExperimentInputsetSpec struct {
Experiment []VariableMinimum `json:"experiment" yaml:"experiment"`
Tasks map[string][]VariableMinimum `json:"tasks" yaml:"tasks"`
}
type ChaosExperimentTemplate ¶
type ChaosExperimentTemplate struct {
Identity string `json:"identity"`
HubIdentity string `json:"hubIdentity"`
Template string `json:"template"`
Variables []Variable `json:"variables"`
Revision string `json:"revision"`
IsDefault bool `json:"isDefault"`
IsEnterprise bool `json:"isEnterprise"`
InfraType string `json:"infraType"`
Infras []string `json:"infras"`
}
type ChaosInfraV2 ¶
type ChatHistoryItem ¶
type ChatRequest ¶
type ChatRequest struct {
Question string `json:"question"`
ChatHistory []ChatHistoryItem `json:"chat_history,omitempty"`
}
type CheckDetails ¶
type CheckDetails struct {
Custom bool `json:"custom"`
DefaultBehaviour string `json:"default_behaviour"`
Description *string `json:"description,omitempty"`
Expression *string `json:"expression,omitempty"`
FailMessage *string `json:"fail_message,omitempty"`
HarnessManaged *bool `json:"harness_managed,omitempty"`
Identifier string `json:"identifier"`
Name string `json:"name"`
Percentage *float64 `json:"percentage,omitempty"`
RuleStrategy string `json:"rule_strategy"`
Rules []Rule `json:"rules"`
Tags *[]string `json:"tags,omitempty"`
}
type CheckDetailsResponse ¶
type CheckDetailsResponse struct {
CheckDetails CheckDetails `json:"check_details"`
}
type CheckListItem ¶
type CheckListItem struct {
Custom bool `json:"custom"`
DataSource []string `json:"data_source"`
Description *string `json:"description,omitempty"`
Expression *string `json:"expression,omitempty"`
Identifier string `json:"identifier"`
Name string `json:"name"`
Percentage *float64 `json:"percentage,omitempty"`
Tags *[]string `json:"tags,omitempty"`
}
type CheckResponse ¶
type CheckResponse struct {
Check *CheckListItem `json:"check,omitempty"`
}
type CheckResponseList ¶
type CheckResponseList = []CheckResponse
type CheckStats ¶
type CheckStatsResponse ¶
type CheckStatsResponse struct {
Name string `json:"name"`
Stats []CheckStats `json:"stats"`
Timestamp *int64 `json:"timestamp,omitempty"`
}
type CheckStatsResponseWithHumanReadableTime ¶
type CheckStatsResponseWithHumanReadableTime struct {
Name string `json:"name"`
Stats []CheckStats `json:"stats"`
Time string `json:"time,omitempty"`
}
type CheckStatus ¶
type ChildGraph ¶
type ChildGraph struct {
PipelineExecutionSummary PipelineExecution `json:"pipelineExecutionSummary,omitempty"`
ExecutionGraph ExecutionGraph `json:"executionGraph,omitempty"`
}
type CodeComment ¶
type CodeComment struct {
Outdated bool `json:"outdated,omitempty"`
MergeBaseSHA string `json:"merge_base_sha,omitempty"`
SourceSHA string `json:"source_sha,omitempty"`
Path string `json:"path,omitempty"`
LineNew int `json:"line_new,omitempty"`
SpanNew int `json:"span_new,omitempty"`
LineOld int `json:"line_old,omitempty"`
SpanOld int `json:"span_old,omitempty"`
}
type CommandProbe ¶
type CommandProbe struct {
Output []byte `json:"output"`
}
type CommitmentCoverageRow ¶
type CommitmentEC2AnalysisResponse ¶
type CommitmentEC2AnalysisResponse struct {
CommitmentSpends []*CommitmentSpendsResponse `json:"commitment_spend,omitempty"`
CommitmentUtilisation *CommitmentUtilisationSummary `json:"commitment_utilization,omitempty"`
EstimatedSavings []*CommitmentEstimatedSavings `json:"estimated_savings,omitempty"`
CurrentSavings float64 `json:"current_savings,omitempty"`
ESRYearly float64 `json:"esr_yearly,omitempty"`
}
type CommitmentEstimatedSavingsResponse ¶
type CommitmentEstimatedSavingsResponse struct {
Data []*CommitmentEstimatedSavings `json:"data,omitempty"`
}
type CommitmentUtilisationSummary ¶
type CommitmentUtilisationSummary struct {
Overall *CommitmentUtilisationResponse `json:"overall,omitempty"`
Breakdown []*CommitmentUtilisationResponse `json:"breakdown,omitempty"`
}
type CommitmentUtlizationsDetail ¶
type CommitmentUtlizationsDetail struct {
Table *CommitmentUtilizationsDetailTable `json:"table,omitempty"`
Chart []*CommitmentUtilizationChart `json:"chart,omitempty"`
}
type ComputeCoverageChart ¶
type ComputeCoveragesDetail ¶
type ComputeCoveragesDetail struct {
Table *ComputeCoveragesDetailTable `json:"table,omitempty"`
Chart []*ComputeCoverageChart `json:"chart,omitempty"`
}
type ComputeCoveragesDetailTable ¶
type ComputeCoveragesDetailTable struct {
ReservationCost *float64 `json:"reservation_cost,omitempty"`
TotalCost *float64 `json:"total_cost,omitempty"`
OnDemandCost *float64 `json:"on_demand_cost,omitempty"`
TotalHours *float64 `json:"total_hours,omitempty"`
TotalCoveredHours *float64 `json:"total_covered_hours,omitempty"`
OnDemandHours *float64 `json:"on_demand_hours,omitempty"`
SavingsPlanHours *float64 `json:"savings_plan_hours,omitempty"`
RICoverageHours *float64 `json:"ri_coverage_hours,omitempty"`
CoveragePercentage *float64 `json:"coverage,omitempty"`
Region *string `json:"region,omitempty"`
MachineType *string `json:"machine_type,omitempty"`
Trend *float64 `json:"trend,omitempty"`
SpotCost *float64 `json:"spot_cost,omitempty"`
SpotHours *float64 `json:"spot_hours,omitempty"`
}
type ComputeSpendChart ¶
type ComputeSpendsDetail ¶
type ComputeSpendsDetail struct {
Table *ComputeSpendsDetailTable `json:"table,omitempty"`
Chart []*ComputeSpendChart `json:"chart,omitempty"`
}
type Connector ¶
type Connector struct {
Name string `json:"name"`
Identifier string `json:"identifier"`
Description string `json:"description"`
AccountIdentifier string `json:"accountIdentifier"`
OrgIdentifier string `json:"orgIdentifier"`
ProjectIdentifier string `json:"projectIdentifier"`
Tags map[string]string `json:"tags"`
Type string `json:"type"`
Spec map[string]interface{} `json:"spec"`
}
Connector represents the core connector information.
type ConnectorCatalogueItem ¶
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"`
}
ConnectorCatalogueItem represents an item in the connector catalogue. Based on https://apidocs.harness.io/tag/Connectors#operation/getConnectorCatalogue
type ConnectorDetail ¶
type ConnectorDetail struct {
Connector Connector `json:"connector"`
CreatedAt int64 `json:"createdAt"`
LastModifiedAt int64 `json:"lastModifiedAt"`
Status ConnectorStatus `json:"status"`
ActivityDetails ActivityDetails `json:"activityDetails"`
HarnessManaged bool `json:"harnessManaged"`
GitDetails ConnectorGitDetails `json:"gitDetails"`
EntityValidityDetails ConnectorEntityValidityDetails `json:"entityValidityDetails"`
GovernanceMetadata interface{} `json:"governanceMetadata,omitempty"`
IsFavorite bool `json:"isFavorite"`
}
ConnectorDetail represents the detailed information of a connector. Based on https://apidocs.harness.io/tag/Connectors#operation/getConnector
type ConnectorDetailResponse ¶
type ConnectorDetailResponse struct {
// Core connector fields
Connector Connector `json:"connector"`
// Human-readable timestamps in RFC3339 instead of Unix timestamps
CreatedAtTime string `json:"created_at_time"`
LastModifiedAtTime string `json:"last_modified_at_time"`
// Nested structures with human-readable fields
Status ConnectorStatusResponse `json:"status"`
ActivityDetails ActivityDetailsResponse `json:"activityDetails"`
// Other fields from ConnectorDetail
HarnessManaged bool `json:"harnessManaged"`
GitDetails ConnectorGitDetails `json:"gitDetails"`
EntityValidityDetails ConnectorEntityValidityDetails `json:"entityValidityDetails"`
GovernanceMetadata interface{} `json:"governanceMetadata,omitempty"`
IsFavorite bool `json:"isFavorite"`
}
ConnectorDetailResponse extends ConnectorDetail with human-readable timestamp fields
func ToConnectorDetail ¶
func ToConnectorDetail(d ConnectorDetail) ConnectorDetailResponse
ToConnectorDetail converts ConnectorDetail adding RFC3339 time strings and nested conversions
type ConnectorEntityValidityDetails ¶
type ConnectorEntityValidityDetails struct {
Valid bool `json:"valid"`
InvalidYaml string `json:"invalidYaml"`
}
ConnectorEntityValidityDetails represents the validity information of a connector.
type ConnectorError ¶
type ConnectorError struct {
Reason string `json:"reason"`
Message string `json:"message"`
Code int `json:"code"`
}
ConnectorError represents an error in connector status.
type ConnectorGitDetails ¶
type ConnectorGitDetails struct {
Valid bool `json:"valid"`
InvalidYaml string `json:"invalidYaml"`
}
ConnectorGitDetails represents git-related information of a connector.
type ConnectorListData ¶
type ConnectorListData struct {
Content []ConnectorDetail `json:"content"`
PageInfo PageInfo `json:"pageInfo"`
Empty bool `json:"empty"`
TotalElements int `json:"totalElements"`
TotalPages int `json:"totalPages"`
}
ConnectorListData represents the data section of connector list response.
type ConnectorListDataResponse ¶
type ConnectorListDataResponse struct {
Content []ConnectorDetailResponse `json:"content"`
PageInfo PageInfo `json:"pageInfo"`
Empty bool `json:"empty"`
TotalElements int `json:"totalElements"`
TotalPages int `json:"totalPages"`
}
ConnectorListDataResponse extends ConnectorListData with human-readable timestamp fields in content
func ToConnectorListData ¶
func ToConnectorListData(data ConnectorListData) ConnectorListDataResponse
ToConnectorListData converts ConnectorListData content to include human-readable times
type ConnectorListQueryParams ¶
type ConnectorListQueryParams struct {
SearchTerm string `json:"searchTerm,omitempty"`
FilterIdentifier string `json:"filterIdentifier,omitempty"`
IncludeAllConnectorsAvailableAtScope *bool `json:"includeAllConnectorsAvailableAtScope,omitempty"`
Branch string `json:"branch,omitempty"`
RepoIdentifier string `json:"repoIdentifier,omitempty"`
GetDefaultFromOtherRepo *bool `json:"getDefaultFromOtherRepo,omitempty"`
GetDistinctFromBranches *bool `json:"getDistinctFromBranches,omitempty"`
Version string `json:"version,omitempty"`
OnlyFavorites *bool `json:"onlyFavorites,omitempty"`
PageIndex *int `json:"pageIndex,omitempty"`
PageSize *int `json:"pageSize,omitempty"`
SortOrders string `json:"sortOrders,omitempty"`
PageToken string `json:"pageToken,omitempty"`
}
ConnectorListQueryParams represents query parameters for listing connectors.
type ConnectorListRequestBody ¶
type ConnectorListRequestBody struct {
ConnectorNames []string `json:"connectorNames,omitempty"`
ConnectorIdentifiers []string `json:"connectorIdentifiers,omitempty"`
Description string `json:"description,omitempty"`
Types []string `json:"types,omitempty"`
Categories []string `json:"categories,omitempty"`
ConnectivityStatuses []string `json:"connectivityStatuses,omitempty"`
InheritingCredentialsFromDelegate *bool `json:"inheritingCredentialsFromDelegate,omitempty"`
ConnectorConnectivityModes []string `json:"connectorConnectivityModes,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
FilterType string `json:"filterType,omitempty"`
}
ConnectorListRequestBody represents the request body for listing connectors. Based on https://apidocs.harness.io/tag/Connectors#operation/getConnectorListV2
type ConnectorListResponse ¶
type ConnectorListResponse struct {
Status string `json:"status"`
Data ConnectorListData `json:"data"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId"`
}
ConnectorListResponse represents the response from listing connectors.
type ConnectorStatus ¶
type ConnectorStatus struct {
Status string `json:"status"`
ErrorSummary string `json:"errorSummary"`
Errors []ConnectorError `json:"errors"`
TestedAt int64 `json:"testedAt"`
LastTestedAt int64 `json:"lastTestedAt"`
LastConnectedAt int64 `json:"lastConnectedAt"`
LastAlertSent int64 `json:"lastAlertSent"`
}
ConnectorStatus represents the status information of a connector.
type ConnectorStatusResponse ¶
type ConnectorStatusResponse struct {
// Original fields from ConnectorStatus
Status string `json:"status"`
ErrorSummary string `json:"errorSummary"`
Errors []ConnectorError `json:"errors"`
// Human-readable timestamps instead of Unix timestamps
TestedAtTime string `json:"tested_at_time"`
LastTestedAtTime string `json:"last_tested_at_time"`
LastConnectedAtTime string `json:"last_connected_at_time"`
LastAlertSentTime string `json:"last_alert_sent_time"`
}
ConnectorStatusResponse extends ConnectorStatus with human-readable timestamp fields
func ToConnectorStatus ¶
func ToConnectorStatus(s ConnectorStatus) ConnectorStatusResponse
ToConnectorStatus converts ConnectorStatus adding RFC3339 time strings
type CreateExperimentFromTemplateRequest ¶
type CreateExperimentFromTemplateRequest struct {
IdentifiersQuery `json:",inline"`
Name string `json:"name"`
Identity string `json:"identity"`
InfraRef string `json:"infraRef"`
}
type CreatePullRequest ¶
type CreatePullRequest struct {
Title string `json:"title"`
Description string `json:"description,omitempty"`
SourceBranch string `json:"source_branch"`
TargetBranch string `json:"target_branch,omitempty"`
IsDraft bool `json:"is_draft,omitempty"`
}
CreatePullRequest represents the request body for creating a new pull request
type CreateResourceGroupOutputData ¶
type CreateResourceGroupOutputData struct {
ResourceGroup ResourceGroup `json:"resourceGroup,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
HarnessManaged bool `json:"harnessManaged,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type CreateResourceGroupRequestBody ¶
type CreateResourceGroupRequestBody struct {
ResourceGroup ResourceGroup `json:"resourceGroup,omitempty"`
}
type CreateRoleAssignmentOutputData ¶
type CreateRoleAssignmentOutputData struct {
RoleAssignment RoleAssignment `json:"roleAssignment,omitempty"`
Scope Scope `json:"scope,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
HarnessManaged bool `json:"harnessManaged,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type CreateRoleAssignmentRequestBody ¶
type CreateRoleAssignmentRequestBody struct {
Identifier string `json:"identifier,omitempty"`
ResourceGroupIdentifier string `json:"resourceGroupIdentifier,omitempty"`
RoleIdentifier string `json:"roleIdentifier,omitempty"`
Principal AccessControlPrincipal `json:"principal,omitempty"`
Managed bool `json:"managed,omitempty"`
Internal bool `json:"internal,omitempty"`
Disabled bool `json:"disabled,omitempty"`
RoleReference *RoleReference `json:"roleReference,omitempty"`
}
type CreateRoleOutputData ¶
type CreateRoleOutputData struct {
Role Role `json:"role,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
HarnessManaged bool `json:"harnessManaged,omitempty"`
Scope Scope `json:"scope,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type CreateSampleLoadTestRequest ¶
type CreateSampleLoadTestRequest struct {
Name string `json:"name"`
UseSampleTest bool `json:"useSampleTest"`
InfraID string `json:"infraId"`
}
CreateSampleLoadTestRequest represents the request body to create a sample load test
type CreateServiceAccountRequestBody ¶
type CreateServiceAccountRequestBody struct {
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Email string `json:"email,omitempty"`
Description string `json:"description,omitempty"`
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
}
type CreateUserGroupOutputData ¶
type CreateUserGroupOutputData struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Users []UserBasicInfo `json:"users,omitempty"`
}
type CreateUserGroupRequestBody ¶
type CreateUserGroupRequestBody struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Users []string `json:"users,omitempty"`
}
type CurrentUserData ¶
type CurrentUserData struct {
UUID string `json:"uuid,omitempty"`
Name string `json:"name,omitempty"`
Email string `json:"email,omitempty"`
Token interface{} `json:"token,omitempty"`
DefaultAccountId string `json:"defaultAccountId,omitempty"`
Intent interface{} `json:"intent,omitempty"`
Accounts []AccountInfo `json:"accounts,omitempty"`
Admin bool `json:"admin,omitempty"`
TwoFactorAuthenticationEnabled bool `json:"twoFactorAuthenticationEnabled,omitempty"`
EmailVerified bool `json:"emailVerified,omitempty"`
Locked bool `json:"locked,omitempty"`
Disabled bool `json:"disabled,omitempty"`
SignupAction interface{} `json:"signupAction,omitempty"`
Edition interface{} `json:"edition,omitempty"`
BillingFrequency interface{} `json:"billingFrequency,omitempty"`
UTMInfo UTMInfo `json:"utmInfo,omitempty"`
ExternallyManaged bool `json:"externallyManaged,omitempty"`
GivenName interface{} `json:"givenName,omitempty"`
FamilyName interface{} `json:"familyName,omitempty"`
ExternalId interface{} `json:"externalId,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastUpdatedAt int64 `json:"lastUpdatedAt,omitempty"`
UserPreferences UserPreferences `json:"userPreferences,omitempty"`
IsEnrichedInfoCollected bool `json:"isEnrichedInfoCollected,omitempty"`
LastLogin int64 `json:"lastLogin,omitempty"`
CreatedAtTime string
LastUpdatedAtTime string
LastLoginTime string
}
type Dashboard ¶
type Dashboard struct {
ID string `json:"id"`
Title string `json:"title"`
Description string `json:"description"`
Models []string `json:"models"`
DataSource []string `json:"data_source"`
Type string `json:"type"`
ViewCount int `json:"view_count"`
FavoriteCount int `json:"favorite_count"`
CreatedAt string `json:"created_at"`
LastAccessedAt string `json:"last_accessed_at"`
}
Dashboard represents a Harness dashboard
type DashboardData ¶
DashboardData represents structured data from a dashboard
type DashboardListOptions ¶
type DashboardListOptions struct {
Page int `json:"page"`
PageSize int `json:"pageSize"`
FolderID string `json:"folderId"`
Tags string `json:"tags"`
}
DashboardListOptions represents options for listing dashboards
type DashboardListResponse ¶
type DashboardListResponse struct {
Items int `json:"items"`
Pages int `json:"pages"`
Resource []Dashboard `json:"resource"`
}
DashboardListResponse represents the response from the list dashboards API
type Delegate ¶
type Delegate struct {
Type string `json:"type,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
LastHeartBeat int64 `json:"lastHeartBeat,omitempty"`
Connected bool `json:"connected"`
DelegateReplicas []DelegateReplica `json:"delegateReplicas,omitempty"`
AutoUpgrade string `json:"autoUpgrade,omitempty"`
Legacy bool `json:"legacy"`
OrgName string `json:"orgName,omitempty"`
ProjectName string `json:"projectName,omitempty"`
}
Delegate represents a delegate in Harness
type DelegateEntityOwner ¶
type DelegateEntityOwner struct {
Identifier string `json:"identifier"`
}
DelegateEntityOwner represents the scope ownership of a delegate token
func (*DelegateEntityOwner) GetOrgID ¶
func (o *DelegateEntityOwner) GetOrgID() string
GetOrgID returns the organization ID from the identifier
func (*DelegateEntityOwner) GetProjectID ¶
func (o *DelegateEntityOwner) GetProjectID() string
GetProjectID returns the project ID from the identifier, if present
type DelegateGroupDetail ¶
type DelegateGroupDetail struct {
GroupID string `json:"groupId"`
DelegateGroupIdentifier string `json:"delegateGroupIdentifier"`
DelegateType string `json:"delegateType"`
GroupName string `json:"groupName"`
GroupImplicitSelectors map[string]string `json:"groupImplicitSelectors"`
LastHeartBeat int64 `json:"lastHeartBeat"`
ConnectivityStatus string `json:"connectivityStatus"`
ActivelyConnected bool `json:"activelyConnected"`
GrpcActive bool `json:"grpcActive"`
DelegateInstanceDetails []DelegateInstanceDetail `json:"delegateInstanceDetails"`
TokenActive bool `json:"tokenActive"`
AutoUpgrade string `json:"autoUpgrade"`
DelegateGroupExpirationTime int64 `json:"delegateGroupExpirationTime"`
UpgraderLastUpdated int64 `json:"upgraderLastUpdated"`
Immutable bool `json:"immutable"`
GroupVersion string `json:"groupVersion"`
DelegateGroupVersionStatus string `json:"delegateGroupVersionStatus"`
Unsupported bool `json:"unsupported"`
}
DelegateGroupDetail represents details of a delegate group
type DelegateGroupsResource ¶
type DelegateGroupsResource struct {
DelegateGroupDetails []DelegateGroupDetail `json:"delegateGroupDetails"`
AutoUpgradeOffCount int `json:"autoUpgradeOffCount"`
}
DelegateGroupsResource represents the resource in delegate groups response
type DelegateGroupsResponse ¶
type DelegateGroupsResponse struct {
MetaData map[string]interface{} `json:"metaData"`
Resource DelegateGroupsResource `json:"resource"`
ResponseMessages []string `json:"responseMessages"`
}
DelegateGroupsResponse represents the response from the get delegate groups by token API
type DelegateInstanceDetail ¶
type DelegateInstanceDetail struct {
UUID string `json:"uuid"`
LastHeartbeat int64 `json:"lastHeartbeat"`
ActivelyConnected bool `json:"activelyConnected"`
HostName string `json:"hostName"`
TokenActive bool `json:"tokenActive"`
Version string `json:"version"`
DelegateExpirationTime int64 `json:"delegateExpirationTime"`
PollingModeEnabled bool `json:"polllingModeEnabled"`
DelegateInstanceVersionStatus string `json:"delegateInstanceVersionStatus"`
Runner bool `json:"runner"`
Disabled bool `json:"disabled"`
}
DelegateInstanceDetail represents details of a delegate instance
type DelegateListFilter ¶
type DelegateListFilter struct {
Status string `json:"status,omitempty"`
Description string `json:"description,omitempty"`
HostName string `json:"hostName,omitempty"`
DelegateName string `json:"delegateName,omitempty"`
DelegateType string `json:"delegateType,omitempty"`
DelegateGroupIdentifier string `json:"delegateGroupIdentifier,omitempty"`
DelegateTags []string `json:"delegateTags,omitempty"`
DelegateInstanceFilter string `json:"delegateInstanceFilter,omitempty"`
AutoUpgrade string `json:"autoUpgrade,omitempty"`
VersionStatus string `json:"versionStatus,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
FilterType string `json:"filterType"`
}
DelegateListFilter represents the filter options for listing delegates
type DelegateListOptions ¶
type DelegateListOptions struct {
All bool `json:"all,omitempty"`
}
DelegateListOptions represents the options for listing delegates
type DelegateListResponse ¶
type DelegateListResponse struct {
MetaData interface{} `json:"metaData"`
Resource []Delegate `json:"resource"`
ResponseMessages []string `json:"responseMessages"`
}
DelegateListResponse represents the response from the list delegates API
type DelegateReplica ¶
type DelegateReplica struct {
UUID string `json:"uuid,omitempty"`
LastHeartbeat int64 `json:"lastHeartbeat,omitempty"`
HostName string `json:"hostName,omitempty"`
Version string `json:"version,omitempty"`
ExpiringAt int64 `json:"expiringAt,omitempty"`
}
DelegateReplica represents a delegate replica instance
type DelegateToken ¶
type DelegateToken struct {
UUID *string `json:"uuid"`
AccountID string `json:"accountId"`
Name string `json:"name"`
CreatedBy *string `json:"createdBy"`
CreatedByNGUser *Principal `json:"createdByNgUser"`
CreatedAt int64 `json:"createdAt"`
CreatedAtTime string `json:"createdAtTime"`
Status string `json:"status"`
Value string `json:"value"`
OwnerIdentifier string `json:"ownerIdentifier"`
ParentUniqueID string `json:"parentUniqueId"`
RevokeAfter int64 `json:"revokeAfter"`
RevokeAfterTime string `json:"revokeAfterTime"`
IsNG bool `json:"isNg"`
LastUsedAt int64 `json:"lastUsedAt"`
LastUsedAtTime string `json:"lastUsedAtTime"`
TokenHash string `json:"tokenHash"`
}
DelegateToken represents a delegate token
func (*DelegateToken) FormatTimestamps ¶
func (d *DelegateToken) FormatTimestamps()
FormatTimestamps formats the Unix timestamps into human-readable format
type DelegateTokenListResponse ¶
type DelegateTokenListResponse struct {
MetaData interface{} `json:"metaData"`
Resource []DelegateToken `json:"resource"`
ResponseMessages []string `json:"responseMessages"`
}
DelegateTokenListResponse represents the response from the list delegate tokens API
type DelegateTokenOptions ¶
type DelegateTokenOptions struct {
Page int `json:"page,omitempty"`
Limit int `json:"limit,omitempty"`
Sort string `json:"sort,omitempty"`
Order string `json:"order,omitempty"`
Status string `json:"status,omitempty"` // Filter by token status
SearchTerm string `json:"searchTerm,omitempty"` // Search by name
}
DelegateTokenOptions represents the options for listing delegate tokens
type DelegateTokenResponse ¶
type DelegateTokenResponse struct {
MetaData map[string]interface{} `json:"metaData"`
Resource DelegateToken `json:"resource"`
ResponseMessages []string `json:"responseMessages"`
}
DelegateTokenResponse represents the response from the create/get delegate token API
type DelegateTokenStatus ¶
type DelegateTokenStatus string
DelegateTokenStatus represents the status of a delegate token
const ( DelegateTokenStatusActive DelegateTokenStatus = "ACTIVE" DelegateTokenStatusRevoked DelegateTokenStatus = "REVOKED" )
type DeleteLoadTestResponse ¶
type DeleteLoadTestResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
}
DeleteLoadTestResponse represents the response from deleting a load test
type EmbeddedUser ¶
EmbeddedUser represents a user in the delegate token context
type EndpointAssertions ¶
type EndpointAssertions struct {
StatusCode int `json:"status_code"`
}
EndpointAssertions represents the assertions for an endpoint
type Entity ¶
type Entity[T any] struct { Status string `json:"status,omitempty"` Data T `json:"data,omitempty"` }
Entity represents a pipeline in the system
type EntityGitDetails ¶
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"`
}
EntityGitDetails represents git details for an entity
type EntityResponse ¶
type EntityResponse struct {
Description string `json:"description,omitempty"`
EntityRef string `json:"entity_ref"`
EntityValidityDetails struct {
ErrorMessages []string `json:"error_messages,omitempty"`
IsValid bool `json:"is_valid,omitempty"`
} `json:"entity_validity_details,omitempty"`
GitDetails struct {
BaseBranch string `json:"base_branch,omitempty"`
BranchName string `json:"branch_name,omitempty"`
CommitId string `json:"commit_id,omitempty"`
CommitMessage string `json:"commit_message,omitempty"`
ConnectorRef string `json:"connector_ref,omitempty"`
FilePath string `json:"file_path,omitempty"`
FileUrl string `json:"file_url,omitempty"`
IsHarnessCodeRepo bool `json:"is_harness_code_repo,omitempty"`
ObjectId string `json:"object_id,omitempty"`
RepoName string `json:"repo_name,omitempty"`
RepoUrl string `json:"repo_url,omitempty"`
StoreType string `json:"store_type,omitempty"`
} `json:"git_details,omitempty"`
Groups []struct {
GroupDescription string `json:"group_description,omitempty"`
GroupIcon string `json:"group_icon,omitempty"`
GroupIdentifier string `json:"group_identifier,omitempty"`
GroupName string `json:"group_name,omitempty"`
OrgIdentifier string `json:"org_identifier,omitempty"`
OrgName string `json:"org_name,omitempty"`
ProjectIdentifier string `json:"project_identifier,omitempty"`
ProjectName string `json:"project_name,omitempty"`
Scope string `json:"scope,omitempty"`
} `json:"groups,omitempty"`
Identifier string `json:"identifier"`
Kind string `json:"kind"`
Lifecycle string `json:"lifecycle,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
Name string `json:"name,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
OrgName string `json:"org_name,omitempty"`
Owner string `json:"owner,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
ProjectName string `json:"project_name,omitempty"`
ReferenceType string `json:"referenceType"`
Scope string `json:"scope"`
Scorecards struct {
Average float32 `json:"average,omitempty"`
Scores []struct {
PassedChecks float32 `json:"passed_checks,omitempty"`
Score float32 `json:"score,omitempty"`
Scorecard string `json:"scorecard,omitempty"`
TotalChecks float32 `json:"total_checks,omitempty"`
} `json:"scores,omitempty"`
} `json:"scorecards,omitempty"`
Starred bool `json:"starred,omitempty"`
Status []struct {
Level string `json:"level,omitempty"`
Message string `json:"message,omitempty"`
Type string `json:"type,omitempty"`
} `json:"status,omitempty"`
Tags []string `json:"tags,omitempty"`
Type string `json:"type,omitempty"`
Yaml string `json:"yaml"`
}
type EntityValidityDetails ¶
type EntityValidityDetails struct {
Valid bool `json:"valid,omitempty"`
InvalidYaml string `json:"invalidYaml,omitempty"`
}
EntityValidityDetails represents the entity validity details of a pipeline
type Environment ¶
type Environment struct {
ID string `json:"identifier"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
OrgIdentifier string `json:"orgIdentifier"`
ProjectIdentifier string `json:"projectIdentifier"`
Color string `json:"color,omitempty"`
Type string `json:"type,omitempty"` // e.g., "PreProduction", "Production"
Tags map[string]string `json:"tags,omitempty"`
YAML string `json:"yaml,omitempty"`
Variables []map[string]interface{} `json:"variables,omitempty"`
GitOpsEnabled bool `json:"gitOpsEnabled,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
}
Environment represents a Harness environment
type EnvironmentListResponse ¶
type EnvironmentListResponse struct {
Data struct {
Content []Environment `json:"content"`
TotalPages int `json:"totalPages"`
TotalElements int `json:"totalElements"`
PageSize int `json:"pageSize"`
PageIndex int `json:"pageIndex"`
} `json:"data"`
}
EnvironmentListResponse represents the response from the list environments API
type EnvironmentOptions ¶
type EnvironmentOptions struct {
Page int `json:"page,omitempty"`
Limit int `json:"limit,omitempty"`
Sort string `json:"sort,omitempty"`
Order string `json:"order,omitempty"`
}
EnvironmentOptions represents the options for listing environments
type EnvironmentResponse ¶
type EnvironmentResponse struct {
Data Environment `json:"data"`
}
EnvironmentResponse represents the response from the get environment API
type ErrorResponse ¶
type ErrorResponse struct {
Code string `json:"code,omitempty"`
Message string `json:"message,omitempty"`
}
ErrorResponse represents the standard error response format returned by the API when an error occurs
type ExecuteWorkflowRequest ¶
type ExecuteWorkflowRequest struct {
Identifier string `json:"identifier"`
Values interface{} `json:"values,omitempty"`
}
type ExecuteWorkflowResponse ¶
type ExecuteWorkflowResponse struct {
ExecutionID string `json:"id"`
}
type ExecutedByExperiment ¶
type ExecutionException ¶
type ExecutionException struct {
Message string `json:"message,omitempty"`
}
type ExecutionFailureInfo ¶
type ExecutionFailureInfo struct {
Message string `json:"message,omitempty"`
FailureTypeList []string `json:"failureTypeList,omitempty"`
ResponseMessages []ExecutionResponseMessage `json:"responseMessages,omitempty"`
}
ExecutionFailureInfo represents the failure information of a pipeline execution
type ExecutionGraph ¶
type ExecutionGraph struct {
RootNodeId string `json:"rootNodeId,omitempty"`
NodeMap map[string]ExecutionNode `json:"nodeMap,omitempty"`
}
type ExecutionNode ¶
type ExecutionNode struct {
Uuid string `json:"uuid,omitempty"`
SetupId string `json:"setupId,omitempty"`
Name string `json:"name,omitempty"`
Identifier string `json:"identifier,omitempty"`
BaseFqn string `json:"baseFqn,omitempty"`
StepType string `json:"stepType,omitempty"`
Status string `json:"status,omitempty"`
UnitProgresses []UnitProgress `json:"unitProgresses,omitempty"`
LogBaseKey string `json:"logBaseKey,omitempty"`
}
type ExecutionResponseMessage ¶
type ExecutionResponseMessage struct {
Code string `json:"code,omitempty"`
Message string `json:"message,omitempty"`
Level string `json:"level,omitempty"`
Exception ExecutionException `json:"exception,omitempty"`
}
type ExecutionSummaryInfo ¶
type ExecutionSummaryInfo struct {
NumOfErrors []int `json:"numOfErrors,omitempty"`
Deployments []int `json:"deployments,omitempty"`
LastExecutionTs int64 `json:"lastExecutionTs,omitempty"`
LastExecutionTsTime string `json:"lastExecutionTsTime,omitempty"`
LastExecutionStatus string `json:"lastExecutionStatus,omitempty"`
LastExecutionId string `json:"lastExecutionId,omitempty"`
}
ExecutionSummaryInfo represents summary information about pipeline executions
func (*ExecutionSummaryInfo) FormatTimestamps ¶
func (e *ExecutionSummaryInfo) FormatTimestamps()
FormatTimestamps formats the Unix timestamps into human-readable format
type ExecutionTriggerInfo ¶
type ExecutionTriggerInfo struct {
TriggerType string `json:"triggerType,omitempty"`
TriggeredBy *PipelineTriggeredBy `json:"triggeredBy,omitempty"`
IsRerun bool `json:"isRerun,omitempty"`
}
ExecutionTriggerInfo represents the trigger information for a pipeline execution
type ExperimentCreationRequest ¶
type ExperimentCreationRequest struct {
InfraType string `json:"infraType"`
ExperimentID string `json:"id"`
Identity string `json:"identity"`
ExperimentName string `json:"name"`
ExperimentDescription string `json:"description"`
Manifest string `json:"manifest"`
InfraID string `json:"infraId"`
CronSyntax *string `json:"cronSyntax"`
IsSingleRunCronEnabled *bool `json:"isSingleRunCronEnabled"`
Tags []string `json:"tags"`
ValidateManifest bool `json:"validateManifest"`
ExperimentType string `json:"experimentType"`
}
type ExperimentCreationResponse ¶
type ExperimentCreationResponse struct {
Data ExperimentCreationRequest `json:"data"`
}
type ExperimentRunDetail ¶
type ExperimentRunRequest ¶
type ExperimentRunRequest struct {
InputsetIdentity string `json:"inputsetIdentity"`
RuntimeInputs *ChaosExperimentInputsetSpec `json:"runtimeInputs"`
}
type ExperimentV2 ¶
type ExperimentV2 struct {
WorkflowType *string `json:"workflowType"`
IsCronEnabled *bool `json:"isCronEnabled"`
Infra *ChaosInfraV2 `json:"infra"`
ExperimentID string `json:"experimentID"`
WorkflowID string `json:"workflowID"`
Name string `json:"name"`
Description string `json:"description"`
UpdatedAt string `json:"updatedAt"`
CreatedAt string `json:"createdAt"`
}
type FMECondition ¶
type FMECondition struct {
Combiner string `json:"combiner"`
Matchers []FMEMatcher `json:"matchers"`
}
FMECondition represents a condition in a rule
type FMEDefaultRule ¶
FMEDefaultRule represents a default rule bucket
type FMEEnvironment ¶
FMEEnvironment represents an environment in Split.io
type FMEEnvironmentsResponse ¶
type FMEEnvironmentsResponse []FMEEnvironment
FMEEnvironmentsResponse represents the response from listing environments GET /internal/api/v2/environments/ws/{wsId} Note: This endpoint returns a simple array, not a paginated object
type FMEFeatureFlag ¶
type FMEFeatureFlag struct {
Name string `json:"name"`
Description string `json:"description"`
ID string `json:"id"`
TrafficType FMETrafficType `json:"trafficType"`
CreationTime int64 `json:"creationTime"`
Tags []FMETag `json:"tags"`
RolloutStatus FMERolloutStatus `json:"rolloutStatus"`
RolloutStatusTimestamp int64 `json:"rolloutStatusTimestamp"`
}
FMEFeatureFlag represents a feature flag (split) in Split.io
type FMEFeatureFlagDefinition ¶
type FMEFeatureFlagDefinition struct {
Name string `json:"name"`
Environment FMEEnvironment `json:"environment"`
TrafficType FMETrafficType `json:"trafficType"`
Killed bool `json:"killed"`
LastTrafficReceivedAt int64 `json:"lastTrafficReceivedAt"`
Treatments []FMETreatment `json:"treatments"`
DefaultTreatment string `json:"defaultTreatment"`
BaselineTreatment string `json:"baselineTreatment"`
TrafficAllocation int `json:"trafficAllocation"`
Rules []FMERule `json:"rules"`
DefaultRule []FMEDefaultRule `json:"defaultRule"`
CreationTime int64 `json:"creationTime"`
LastUpdateTime int64 `json:"lastUpdateTime"`
}
FMEFeatureFlagDefinition represents the complete definition of a feature flag in an environment
type FMEFeatureFlagDefinitionResponse ¶
type FMEFeatureFlagDefinitionResponse = FMEFeatureFlagDefinition
FMEFeatureFlagDefinitionResponse represents the response from getting a feature flag definition GET /internal/api/v2/splits/ws/{wsId}/{feature_flag_name}/environments/{environment_id_or_name} Note: This endpoint returns the definition object directly, not wrapped
type FMEFeatureFlagsResponse ¶
type FMEFeatureFlagsResponse struct {
Objects []FMEFeatureFlag `json:"objects"`
Offset int `json:"offset"`
Limit int `json:"limit"`
TotalCount int `json:"totalCount"`
}
FMEFeatureFlagsResponse represents the response from listing feature flags GET /internal/api/v2/splits/ws/{wsId}
type FMEMatcher ¶
FMEMatcher represents a matcher in a rule condition
type FMERolloutStatus ¶
FMERolloutStatus represents the rollout status of a feature flag
type FMERule ¶
type FMERule struct {
Buckets []FMEBucket `json:"buckets"`
Condition FMECondition `json:"condition"`
}
FMERule represents a targeting rule in a feature flag
type FMETrafficType ¶
FMETrafficType represents a traffic type in Split.io
type FMETreatment ¶
type FMETreatment struct {
Name string `json:"name"`
Configurations string `json:"configurations"`
}
FMETreatment represents a treatment (variation) in a feature flag
type FMEWorkspace ¶
FMEWorkspace represents a workspace in Split.io
type FMEWorkspacesResponse ¶
type FMEWorkspacesResponse struct {
Objects []FMEWorkspace `json:"objects"`
Offset int `json:"offset"`
Limit int `json:"limit"`
TotalCount int `json:"totalCount"`
}
FMEWorkspacesResponse represents the response from listing workspaces GET /internal/api/v2/workspaces
type FaultData ¶
type FaultData struct {
Namespace string `json:"namespace"`
Name string `json:"name"`
HelperPodDetails []HelperPodDetails `json:"helperPodDetails"`
Targets []Targets `json:"targets,omitempty"`
}
type FinalLogKeys ¶
type FinalLogKeys struct {
StepLogBaseKeys []string `json:"stepLogBaseKeys,omitempty"`
}
type GetChecksParams ¶
type GetEntitiesParams ¶
type GetEntitiesParams struct {
Page int32 `form:"page,omitempty" json:"page,omitempty"`
Limit int32 `form:"limit,omitempty" json:"limit,omitempty"`
Sort string `form:"sort,omitempty" json:"sort,omitempty"`
SearchTerm string `form:"search_term,omitempty" json:"search_term,omitempty"`
Scopes string `form:"scopes,omitempty" json:"scopes,omitempty"`
EntityRefs string `form:"entity_refs,omitempty" json:"entity_refs,omitempty"`
OwnedByMe bool `form:"owned_by_me,omitempty" json:"owned_by_me,omitempty"`
Favorites bool `form:"favorites,omitempty" json:"favorites,omitempty"`
Kind string `form:"kind,omitempty" json:"kind,omitempty"`
Type string `form:"type,omitempty" json:"type,omitempty"`
Owner string `form:"owner,omitempty" json:"owner,omitempty"`
Lifecycle string `form:"lifecycle,omitempty" json:"lifecycle,omitempty"`
Tags string `form:"tags,omitempty" json:"tags,omitempty"`
HarnessAccount string `json:"Harness-Account,omitempty"`
}
type GetEntityParams ¶
type GetEntityParams struct {
BranchName string `form:"branch_name,omitempty" json:"branch_name,omitempty"`
ConnectorRef string `form:"connector_ref,omitempty" json:"connector_ref,omitempty"`
RepoName string `form:"repo_name,omitempty" json:"repo_name,omitempty"`
LoadFromFallbackBranch bool `form:"load_from_fallback_branch,omitempty" json:"load_from_fallback_branch,omitempty"`
OrgIdentifier string `form:"orgIdentifier,omitempty" json:"orgIdentifier,omitempty"`
ProjectIdentifier string `form:"projectIdentifier,omitempty" json:"projectIdentifier,omitempty"`
HarnessAccount string `json:"Harness-Account,omitempty"`
}
type GetExperimentResponse ¶
type GetExperimentResponse struct {
ExperimentID string `json:"ExperimentID"`
Identity string `json:"Identity"`
InfraID string `json:"InfraID"`
InfraType string `json:"InfraType"`
ExperimentType string `json:"ExperimentType"`
Revision []WorkflowRevision `json:"Revision"`
RecentExperimentRunDetails []ExperimentRunDetail `json:"RecentExperimentRunDetails"`
}
type GetProbeResponse ¶
type GetProbeResponse struct {
ProbeRequest `json:",inline"`
CreatedAt int64 `json:"createdAt"`
UpdatedAt int64 `json:"updatedAt"`
}
type GetScorecardsParams ¶
type GetScorecardsParams struct {
HarnessAccount string `json:"Harness-Account,omitempty"`
}
type GitDetails ¶
type GitDetails struct {
Valid bool `json:"valid,omitempty"`
InvalidYaml string `json:"invalidYaml,omitempty"`
}
GitDetails represents the git details of a pipeline
type HarnessErrorMessage ¶
type HelperPodDetails ¶
type IdentifiersQuery ¶
type Infrastructure ¶
type Infrastructure struct {
ID string `json:"identifier"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
OrgIdentifier string `json:"orgIdentifier"`
ProjectIdentifier string `json:"projectIdentifier"`
EnvironmentRef string `json:"environmentRef"`
Type string `json:"type,omitempty"`
DeploymentType string `json:"deploymentType,omitempty"` // e.g., Kubernetes, ECS, etc.
YAML string `json:"yaml,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Variables []map[string]interface{} `json:"variables,omitempty"`
GitOpsEnabled bool `json:"gitOpsEnabled,omitempty"`
AccountID string `json:"accountId,omitempty"`
StoreType string `json:"storeType,omitempty"`
}
Infrastructure represents a Harness infrastructure definition
type InfrastructureItem ¶
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"`
}
InfrastructureItem represents an item in the response list
type InfrastructureListResponse ¶
type InfrastructureListResponse struct {
Status string `json:"status,omitempty"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId,omitempty"`
Data struct {
Content []InfrastructureItem `json:"content"`
TotalPages int `json:"totalPages"`
TotalItems int `json:"totalItems"`
PageItemCount int `json:"pageItemCount"`
PageSize int `json:"pageSize"`
PageIndex int `json:"pageIndex"`
Empty bool `json:"empty"`
PageToken interface{} `json:"pageToken"`
} `json:"data"`
}
InfrastructureListResponse represents the response from the list infrastructures API
type InfrastructureOptions ¶
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
}
InfrastructureOptions represents the options for listing infrastructures
type InputSetDetail ¶
type InputSetDetail struct {
AccountId string `json:"accountId,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
InputSetYaml string `json:"inputSetYaml,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
InputSetErrorWrapper InputSetErrorWrapper `json:"inputSetErrorWrapper,omitempty"`
GitDetails GitDetails `json:"gitDetails,omitempty"`
EntityValidityDetails EntityValidityDetails `json:"entityValidityDetails,omitempty"`
Outdated bool `json:"outdated,omitempty"`
ErrorResponse bool `json:"errorResponse,omitempty"`
}
InputSetDetail represents the detailed information of a specific input set
type InputSetErrorDetails ¶
type InputSetErrorDetails struct {
ErrorPipelineYaml string `json:"errorPipelineYaml,omitempty"`
UuidToErrorResponseMap map[string]interface{} `json:"uuidToErrorResponseMap,omitempty"`
InvalidInputSetReferences []string `json:"invalidInputSetReferences,omitempty"`
Type string `json:"type,omitempty"`
}
InputSetErrorDetails represents error details for input sets
type InputSetErrorWrapper ¶
type InputSetErrorWrapper struct {
ErrorPipelineYaml string `json:"errorPipelineYaml,omitempty"`
UuidToErrorResponseMap map[string]interface{} `json:"uuidToErrorResponseMap,omitempty"`
InvalidInputSetReferences []string `json:"invalidInputSetReferences,omitempty"`
Type string `json:"type,omitempty"`
}
InputSetErrorWrapper represents the error wrapper for input sets
type InputSetListData ¶
type InputSetListData struct {
TotalPages int `json:"totalPages,omitempty"`
TotalItems int `json:"totalItems,omitempty"`
PageItemCount int `json:"pageItemCount,omitempty"`
PageSize int `json:"pageSize,omitempty"`
Content []InputSetListItem `json:"content,omitempty"`
PageIndex int `json:"pageIndex,omitempty"`
Empty bool `json:"empty,omitempty"`
PageToken string `json:"pageToken,omitempty"`
}
InputSetListData represents the data field of input set list response
type InputSetListItem ¶
type InputSetListItem struct {
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
Description string `json:"description,omitempty"`
InputSetType string `json:"inputSetType,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
GitDetails GitDetails `json:"gitDetails,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastUpdatedAt int64 `json:"lastUpdatedAt,omitempty"`
IsOutdated bool `json:"isOutdated,omitempty"`
InputSetErrorDetails InputSetErrorDetails `json:"inputSetErrorDetails,omitempty"`
OverlaySetErrorDetails map[string]string `json:"overlaySetErrorDetails,omitempty"`
EntityValidityDetails EntityValidityDetails `json:"entityValidityDetails,omitempty"`
Modules []string `json:"modules,omitempty"`
}
InputSetListItem represents an item in the input set list
type InputSetListOptions ¶
type InputSetListOptions struct {
PaginationOptions
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
SearchTerm string `json:"searchTerm,omitempty"`
}
InputSetListOptions represents the options for listing input sets
type InputSetListResponse ¶
type InputSetListResponse struct {
Status string `json:"status,omitempty"`
Data InputSetListData `json:"data,omitempty"`
MetaData map[string]interface{} `json:"metaData,omitempty"`
CorrelationId string `json:"correlationId,omitempty"`
}
InputSetListResponse represents the full response structure for listing input sets
type InputSetResponse ¶
type InputSetResponse struct {
Status string `json:"status,omitempty"`
Data InputSetDetail `json:"data,omitempty"`
MetaData map[string]interface{} `json:"metaData,omitempty"`
CorrelationId string `json:"correlationId,omitempty"`
}
InputSetResponse represents the full response structure for getting a specific input set
type InputValue ¶
type InviteUserOutputData ¶
type InviteUserRequestBody ¶
type InviteUserRequestBody struct {
Emails []string `json:"emails,omitempty"`
UserGroups []string `json:"userGroups,omitempty"`
RoleBindings []RoleBinding `json:"roleBindings,omitempty"`
}
type LinuxInfra ¶
type LinuxInfra struct {
InfraID string `json:"infraID"`
Name string `json:"name"`
Description string `json:"description"`
Tags []string `json:"tags"`
EnvironmentID string `json:"environmentID"`
IsActive bool `json:"isActive"`
IsInfraConfirmed bool `json:"isInfraConfirmed"`
IsRegistered bool `json:"isRegistered"`
UpdatedAt string `json:"updatedAt"`
CreatedAt string `json:"createdAt"`
StartTime string `json:"startTime"`
Version string `json:"version"`
LastHeartbeat string `json:"lastHeartbeat"`
Hostname string `json:"hostname"`
Status string `json:"status"`
CreatedBy *UserDetail `json:"createdBy,omitempty"`
UpdatedBy *UserDetail `json:"updatedBy,omitempty"`
}
LinuxInfra represents a Linux infrastructure (load runner)
type ListAuditEventsFilter ¶
type ListAuditEventsFilter struct {
Scopes []AuditResourceScope `json:"scopes,omitempty"`
Principals []AuditPrincipal `json:"principals,omitempty"`
Actions []string `json:"actions,omitempty"`
FilterType string `json:"filterType,omitempty"`
StartTime int64 `json:"startTime,omitempty"`
EndTime int64 `json:"endTime,omitempty"`
Resources []AuditResource `json:"resources,omitempty"`
}
type ListExperimentResponse ¶
type ListExperimentResponse struct {
Data []ExperimentV2 `json:"data"`
Pagination Pagination `json:"pagination"`
}
type ListExperimentTemplateResponse ¶
type ListExperimentTemplateResponse struct {
Data []ChaosExperimentTemplate `json:"data"`
Pagination Pagination `json:"pagination"`
}
type ListExperimentVariables ¶
type ListLinuxInfraResponse ¶
type ListLinuxInfraResponse struct {
TotalNoOfInfras int `json:"totalNoOfInfras"`
Infras []LinuxInfra `json:"infras"`
}
ListLinuxInfraResponse represents the REST response for listing Linux infrastructures
type ListLoadTestResponse ¶
type ListLoadTestResponse struct {
Items []LoadTest `json:"items"`
Pagination Pagination `json:"pagination"`
}
ListLoadTestResponse represents the response from listing load tests
type ListOutput ¶
type ListOutput[T any] struct { Status string `json:"status,omitempty"` Data ListOutputData[T] `json:"data,omitempty"` }
ListOutput represents a generic listing response
type ListOutputData ¶
type ListOutputData[T any] struct { TotalElements int `json:"totalElements,omitempty"` TotalItems int `json:"totalItems,omitempty"` TotalPages int `json:"totalPages,omitempty"` Size int `json:"size,omitempty"` PageSize int `json:"pageSize,omitempty"` Content []T `json:"content,omitempty"` Number int `json:"number,omitempty"` PageIndex int `json:"pageIndex,omitempty"` PageItemCount int `json:"pageItemCount,omitempty"` Sort SortInfo `json:"sort,omitempty"` First bool `json:"first,omitempty"` Pageable PageableInfo `json:"pageable,omitempty"` NumberOfElements int `json:"numberOfElements,omitempty"` Last bool `json:"last,omitempty"` Empty bool `json:"empty,omitempty"` }
ListOutputData represents the data field of a list response
type ListProbeResponse ¶
type ListProbeResponse struct {
TotalNoOfProbes int `json:"totalNoOfProbes"`
Probes []GetProbeResponse `json:"data"`
}
type ListSecretsData ¶
type ListSecretsData struct {
TotalPages int `json:"totalPages"`
TotalItems int `json:"totalItems"`
PageItemCount int `json:"pageItemCount"`
PageSize int `json:"pageSize"`
Content []SecretData `json:"content"`
}
ListSecretsData represents the data field in the list secrets response
type ListSecretsResponse ¶
type ListSecretsResponse struct {
Status string `json:"status"`
Data ListSecretsData `json:"data"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId"`
}
ListSecretsResponse represents the response from the list secrets API
type LoadTest ¶
type LoadTest struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Tags []string `json:"tags"`
AccountID string `json:"accountId"`
OrgID string `json:"orgId"`
ProjectID string `json:"projectId"`
InfraID string `json:"infraId,omitempty"`
EnvID string `json:"envId,omitempty"`
ScenarioID string `json:"scenarioId,omitempty"`
TargetURL string `json:"targetUrl"`
ScriptContent string `json:"scriptContent,omitempty"`
IsAPIGenerated bool `json:"isApiGenerated"`
IsSampleTest bool `json:"isSampleTest"`
JSONScript string `json:"jsonScript,omitempty"`
JSONSpecData *LoadTestJSONSpec `json:"jsonSpecData,omitempty"`
LatestRevisionID string `json:"latestRevisionId"`
DefaultUsers int `json:"defaultUsers"`
DefaultSpawnRate float64 `json:"defaultSpawnRate"`
DefaultDurationSec int `json:"defaultDurationSec"`
MaxDurationSec int `json:"maxDurationSec"`
Metadata map[string]interface{} `json:"metadata,omitempty"`
RecentRuns []LoadTestRun `json:"recentRuns,omitempty"`
CreatedAt string `json:"createdAt"`
CreatedBy string `json:"createdBy"`
UpdatedAt string `json:"updatedAt"`
UpdatedBy string `json:"updatedBy"`
}
LoadTest represents a load test entity
type LoadTestConfig ¶
type LoadTestConfig struct {
Host string `json:"host"`
}
LoadTestConfig represents the configuration section of a load test spec
type LoadTestEndpoint ¶
type LoadTestEndpoint struct {
Name string `json:"name"`
Method string `json:"method"`
Path string `json:"path"`
Headers map[string]string `json:"headers,omitempty"`
QueryParams map[string]string `json:"query_params,omitempty"`
Body map[string]interface{} `json:"body,omitempty"`
Assertions *EndpointAssertions `json:"assertions,omitempty"`
}
LoadTestEndpoint represents an endpoint in the load test specification
type LoadTestJSONSpec ¶
type LoadTestJSONSpec struct {
Config *LoadTestConfig `json:"config,omitempty"`
Endpoints []LoadTestEndpoint `json:"endpoints,omitempty"`
}
LoadTestJSONSpec represents the JSON specification for a load test
type LoadTestRun ¶
type LoadTestRun struct {
ID string `json:"id"`
Status string `json:"status"`
TargetUsers int `json:"targetUsers"`
SpawnRate int `json:"spawnRate"`
DurationSeconds int `json:"durationSeconds"`
StartedAt string `json:"startedAt"`
FinishedAt string `json:"finishedAt,omitempty"`
CreatedAt string `json:"createdAt"`
CreatedBy string `json:"createdBy"`
}
LoadTestRun represents a single run of a load test
type LoadTestRunResponse ¶
type LoadTestRunResponse struct {
ID string `json:"id"`
LoadTestID string `json:"loadTestId"`
RunSequence int `json:"runSequence"`
AccountID string `json:"accountId"`
OrgID string `json:"orgId"`
ProjectID string `json:"projectId"`
TargetUsers int `json:"targetUsers"`
SpawnRate int `json:"spawnRate"`
DurationSeconds int `json:"durationSeconds"`
Status string `json:"status"`
StartedAt string `json:"startedAt"`
CreatedAt string `json:"createdAt"`
CreatedBy string `json:"createdBy"`
UpdatedAt string `json:"updatedAt"`
UpdatedBy string `json:"updatedBy"`
}
LoadTestRunResponse represents the full response from running or stopping a load test
type LogDownloadResponse ¶
type LogDownloadResponse struct {
Link string `json:"link"`
Status string `json:"status"`
Expires time.Time `json:"expires"`
}
LogDownloadResponse represents the response from the log download API
type MatchingDoc ¶
type MoveConfigType ¶
type MoveConfigType string
const ( InlineToRemote MoveConfigType = "INLINE_TO_REMOTE" RemoteToInline MoveConfigType = "REMOTE_TO_INLINE" )
type MoveEnvironmentConfigsRequest ¶
type MoveEnvironmentConfigsRequest struct {
EnvironmentIdentifier string `json:"-"` // Not part of the body but needed for the path
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
}
type MoveEnvironmentConfigsResponse ¶
type MoveEnvironmentConfigsResponse struct {
Status string `json:"status"`
CorrelationId string `json:"correlationId"`
MetaData any `json:"metaData"`
Data struct {
Identifier string `json:"identifier"`
Success bool `json:"success"`
} `json:"data,omitempty"`
Code string `json:"code,omitempty"`
Message string `json:"message,omitempty"`
DetailedMessage string `json:"detailedMessage,omitempty"`
ResponseMessages []HarnessErrorMessage `json:"responseMessages,omitempty"`
}
type MoveInfraConfigsRequest ¶
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"
}
MoveInfraConfigsRequest represents the request to move infrastructure configurations
type MoveInfraConfigsResponse ¶
type MoveInfraConfigsResponse struct {
Status string `json:"status"`
CorrelationId string `json:"correlationId"`
MetaData any `json:"metaData"`
Data struct {
Identifier string `json:"identifier"`
Success bool `json:"success"`
} `json:"data,omitempty"`
Code string `json:"code,omitempty"`
Message string `json:"message,omitempty"`
DetailedMessage string `json:"detailedMessage,omitempty"`
ResponseMessages []HarnessErrorMessage `json:"responseMessages,omitempty"`
}
MoveInfraConfigsResponse represents the response from the move infrastructure configs API
type PageInfo ¶
type PageInfo struct {
Page int `json:"page"`
Size int `json:"size"`
HasNext bool `json:"hasNext"`
HasPrev bool `json:"hasPrev"`
}
PageInfo represents pagination information.
type PageableInfo ¶
type PageableInfo struct {
Offset int `json:"offset,omitempty"`
Sort SortInfo `json:"sort,omitempty"`
Paged bool `json:"paged,omitempty"`
Unpaged bool `json:"unpaged,omitempty"`
PageSize int `json:"pageSize,omitempty"`
PageNumber int `json:"pageNumber,omitempty"`
}
PageableInfo represents pagination information
type Pagination ¶
type PaginationOptions ¶
type PermissionsOutputData ¶
type PermissionsOutputData struct {
Permission PermissionsOutputObject `json:"permission,omitempty"`
}
type PermissionsOutputObject ¶
type PermissionsOutputObject struct {
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Status string `json:"status,omitempty"`
IncludeInAllRoles bool `json:"includeInAllRoles,omitempty"`
AllowedScopeLevels []string `json:"allowedScopeLevels,omitempty"`
ResourceType string `json:"resourceType,omitempty"`
Action string `json:"action,omitempty"`
}
type PipelineData ¶
type PipelineData struct {
YamlPipeline string `json:"yamlPipeline,omitempty"`
ResolvedTemplatesPipelineYaml string `json:"resolvedTemplatesPipelineYaml,omitempty"`
GitDetails GitDetails `json:"gitDetails,omitempty"`
EntityValidityDetails EntityValidityDetails `json:"entityValidityDetails,omitempty"`
Modules []string `json:"modules,omitempty"`
StoreType string `json:"storeType,omitempty"`
ConnectorRef string `json:"connectorRef,omitempty"`
AllowDynamicExecutions bool `json:"allowDynamicExecutions,omitempty"`
IsInlineHCEntity bool `json:"isInlineHCEntity,omitempty"`
}
PipelineData represents the data field of a pipeline response
type PipelineExecution ¶
type PipelineExecution struct {
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
PlanExecutionId string `json:"planExecutionId,omitempty"`
Name string `json:"name,omitempty"`
Status string `json:"status,omitempty"`
FailureInfo ExecutionFailureInfo `json:"failureInfo,omitempty"`
StartTs int64 `json:"startTs,omitempty"`
StartTsTime string `json:"startTsTime,omitempty"`
EndTs int64 `json:"endTs,omitempty"`
EndTsTime string `json:"endTsTime,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
CreatedAtTime string `json:"createdAtTime,omitempty"`
ConnectorRef string `json:"connectorRef,omitempty"`
SuccessfulStagesCount int `json:"successfulStagesCount,omitempty"`
FailedStagesCount int `json:"failedStagesCount,omitempty"`
RunningStagesCount int `json:"runningStagesCount,omitempty"`
TotalStagesRunningCount int `json:"totalStagesRunningCount,omitempty"`
StagesExecuted []string `json:"stagesExecuted,omitempty"`
AbortedBy User `json:"abortedBy,omitempty"`
QueuedType string `json:"queuedType,omitempty"`
RunSequence int32 `json:"runSequence,omitempty"`
ShouldUseSimplifiedBaseKey bool `json:"shouldUseSimplifiedKey,omitempty"`
ExecutionTriggerInfo *ExecutionTriggerInfo `json:"executionTriggerInfo,omitempty"`
}
PipelineExecution represents a pipeline execution
func (*PipelineExecution) FormatTimestamps ¶
func (p *PipelineExecution) FormatTimestamps()
FormatTimestamps formats the Unix timestamps into human-readable format
type PipelineExecutionOptions ¶
type PipelineExecutionOptions struct {
PaginationOptions
Status string `json:"status,omitempty"`
MyDeployments bool `json:"myDeployments,omitempty"`
Branch string `json:"branch,omitempty"`
SearchTerm string `json:"searchTerm,omitempty"`
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
PipelineTags []PipelineTag `json:"pipelineTags,omitempty"`
}
PipelineExecutionOptions represents the options for listing pipeline executions
type PipelineExecutionResponse ¶
type PipelineExecutionResponse struct {
PipelineExecutionSummary PipelineExecution `json:"pipelineExecutionSummary,omitempty"`
ExecutionGraph ExecutionGraph `json:"executionGraph,omitempty"`
ChildGraph ChildGraph `json:"childGraph,omitempty"`
}
PipelineExecutionResponse represents the full response structure for pipeline execution details
type PipelineListItem ¶
type PipelineListItem struct {
Name string `json:"name,omitempty"`
Identifier string `json:"identifier,omitempty"`
Description string `json:"description,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Version int `json:"version,omitempty"`
NumOfStages int `json:"numOfStages,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastUpdatedAt int64 `json:"lastUpdatedAt,omitempty"`
Modules []string `json:"modules,omitempty"`
ExecutionSummaryInfo ExecutionSummaryInfo `json:"executionSummaryInfo,omitempty"`
Filters map[string]interface{} `json:"filters,omitempty"`
StageNames []string `json:"stageNames,omitempty"`
StoreType string `json:"storeType,omitempty"`
ConnectorRef string `json:"connectorRef,omitempty"`
IsDraft bool `json:"isDraft,omitempty"`
YamlVersion string `json:"yamlVersion,omitempty"`
IsInlineHCEntity bool `json:"isInlineHCEntity,omitempty"`
}
PipelineListItem represents an item in the pipeline list
type PipelineListOptions ¶
type PipelineListOptions struct {
PaginationOptions
SearchTerm string `json:"searchTerm,omitempty"`
}
PipelineListOptions represents the options for listing pipelines
type PipelineSummary ¶
type PipelineSummary struct {
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Version int `json:"version,omitempty"`
NumOfStages int `json:"numOfStages,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastUpdatedAt int64 `json:"lastUpdatedAt,omitempty"`
Modules []string `json:"modules,omitempty"`
ExecutionSummaryInfo *ExecutionSummaryInfo `json:"executionSummaryInfo,omitempty"`
StageNames []string `json:"stageNames,omitempty"`
YamlVersion string `json:"yamlVersion,omitempty"`
}
PipelineSummary represents a summary of a pipeline
type PipelineTag ¶
PipelineTag represents a key-value tag for filtering pipelines
type PipelineTriggeredBy ¶
type PipelineTriggeredBy struct {
UUID string `json:"uuid,omitempty"`
Identifier string `json:"identifier,omitempty"`
ExtraInfo *TriggerExtraInfo `json:"extraInfo,omitempty"`
}
PipelineTriggeredBy represents the user or entity that triggered the pipeline execution
type Principal ¶
type Principal struct {
Type string `json:"type"`
Name string `json:"name"`
Email string `json:"email"`
Username string `json:"username"`
AccountID string `json:"accountId"`
Role interface{} `json:"role"`
UniqueID string `json:"uniqueId"`
ImpersonatingPrincipal interface{} `json:"impersonatingPrincipal"`
JWTClaims map[string]interface{} `json:"jwtclaims"`
}
Principal represents an NG user in the delegate token context
type ProbeIterations ¶
type ProbeRecentExecutions ¶
type ProbeRecentExecutions struct {
FaultName string `json:"faultName"`
Status *Status `json:"status"`
ExecutedByExperiment *ExecutedByExperiment `json:"executedByExperiment"`
}
type ProbeRequest ¶
type ProbeRequest struct {
Identity string `json:"identity"`
ProbeID string `json:"probeId"`
Name string `json:"name"`
Description *string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
Type string `json:"type"`
IsEnabled *bool `json:"isEnabled"`
InfrastructureType string `json:"infrastructureType"`
RunProperties ProbeTemplateRunProperties `json:"runProperties,omitempty"`
RecentProbeRuns []*ProbeRecentExecutions `json:"recentProbeRuns,omitempty"`
ProbeReferenceCount *int64 `json:"probeReferenceCount,omitempty"`
}
type ProbeTemplateRunProperties ¶
type ProbeTemplateRunProperties struct {
ProbeTimeout string `json:"timeout,omitempty"`
Interval string `json:"interval,omitempty"`
Attempt interface{} `json:"attempt,omitempty"`
ProbePollingInterval string `json:"pollingInterval,omitempty"`
InitialDelay string `json:"initialDelay,omitempty"`
StopOnFailure bool `json:"stopOnFailure,omitempty"`
Verbosity *string `json:"verbosity,omitempty"`
Retry *interface{} `json:"retry,omitempty"`
}
type PullRequest ¶
type PullRequest struct {
Author PullRequestAuthor `json:"author,omitempty"`
CheckSummary PullRequestCheckSummary `json:"check_summary,omitempty"`
Closed int64 `json:"closed,omitempty"`
Created int64 `json:"created,omitempty"`
Description string `json:"description,omitempty"`
Edited int64 `json:"edited,omitempty"`
IsDraft bool `json:"is_draft,omitempty"`
Labels []PullRequestLabel `json:"labels,omitempty"`
MergeBaseSha string `json:"merge_base_sha,omitempty"`
MergeCheckStatus string `json:"merge_check_status,omitempty"`
MergeConflicts []string `json:"merge_conflicts,omitempty"`
MergeMethod string `json:"merge_method,omitempty"`
MergeTargetSha string `json:"merge_target_sha,omitempty"`
Merged int64 `json:"merged,omitempty"`
Merger PullRequestAuthor `json:"merger,omitempty"`
Number int `json:"number,omitempty"`
RebaseCheckStatus string `json:"rebase_check_status,omitempty"`
RebaseConflicts []string `json:"rebase_conflicts,omitempty"`
Rules []PullRequestRule `json:"rules,omitempty"`
SourceBranch string `json:"source_branch,omitempty"`
SourceRepoID int `json:"source_repo_id,omitempty"`
SourceSha string `json:"source_sha,omitempty"`
State string `json:"state,omitempty"`
Stats PullRequestStats `json:"stats,omitempty"`
TargetBranch string `json:"target_branch,omitempty"`
TargetRepoID int `json:"target_repo_id,omitempty"`
Title string `json:"title,omitempty"`
Updated int64 `json:"updated,omitempty"`
}
PullRequest represents a pull request in the system
type PullRequestActivitiesResponse ¶
type PullRequestActivitiesResponse []PullRequestActivity
PullRequestActivitiesResponse represents the response from the activities API It's a direct slice of activities as the API returns an array
type PullRequestActivity ¶
type PullRequestActivity struct {
ID int `json:"id,omitempty"`
Type string `json:"type,omitempty"`
Created int64 `json:"created,omitempty"`
Updated int64 `json:"updated,omitempty"`
Edited int64 `json:"edited,omitempty"`
ParentID int `json:"parent_id,omitempty"`
RepoID int64 `json:"repo_id"`
PullReqID int64 `json:"pullreq_id"`
Kind string `json:"kind,omitempty"`
Text string `json:"text,omitempty"`
CodeComment CodeComment `json:"code_comment,omitempty"`
Metadata interface{} `json:"metadata,omitempty"`
Resolved int64 `json:"resolved,omitempty"`
PayloadRaw json.RawMessage `json:"payload"`
}
PullRequestActivity represents an activity on a pull request
type PullRequestActivityOptions ¶
type PullRequestActivityOptions struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Kind []string `json:"kind,omitempty"`
Type []string `json:"type,omitempty"`
After int64 `json:"after,omitempty"`
Before int64 `json:"before,omitempty"`
Limit int `json:"limit,omitempty"`
Page int `json:"page,omitempty"`
}
PullRequestActivityOptions defines options for listing PR activities
type PullRequestAuthor ¶
type PullRequestAuthor struct {
Created int64 `json:"created,omitempty"`
DisplayName string `json:"display_name,omitempty"`
Email string `json:"email,omitempty"`
ID int `json:"id,omitempty"`
Type string `json:"type,omitempty"`
UID string `json:"uid,omitempty"`
Updated int64 `json:"updated,omitempty"`
}
PullRequestAuthor represents a user in the pull request system
type PullRequestCheck ¶
type PullRequestCheck struct {
Created int64 `json:"created,omitempty"`
Ended int64 `json:"ended,omitempty"`
ID int `json:"id,omitempty"`
Identifier string `json:"identifier,omitempty"`
Link string `json:"link,omitempty"`
Metadata interface{} `json:"metadata"`
Payload PullRequestCheckPayload `json:"payload,omitempty"`
ReportedBy PullRequestCheckReporter `json:"reported_by,omitempty"`
Started int64 `json:"started,omitempty"`
Status string `json:"status,omitempty"`
Summary string `json:"summary,omitempty"`
Updated int64 `json:"updated,omitempty"`
}
PullRequestCheck represents a status check for a pull request
type PullRequestCheckInfo ¶
type PullRequestCheckInfo struct {
Bypassable bool `json:"bypassable,omitempty"`
Check PullRequestCheck `json:"check,omitempty"`
Required bool `json:"required,omitempty"`
}
PullRequestCheckInfo represents a check with additional information
type PullRequestCheckPayload ¶
type PullRequestCheckPayload struct {
Data interface{} `json:"data"`
Kind string `json:"kind"`
Version string `json:"version,omitempty"`
}
PullRequestCheckPayload represents the payload for a pull request check
type PullRequestCheckReporter ¶
type PullRequestCheckReporter struct {
Created int64 `json:"created,omitempty"`
DisplayName string `json:"display_name,omitempty"`
Email string `json:"email,omitempty"`
ID int `json:"id,omitempty"`
Type string `json:"type,omitempty"`
UID string `json:"uid,omitempty"`
Updated int64 `json:"updated,omitempty"`
}
PullRequestCheckReporter represents the entity that reported a check
type PullRequestCheckSummary ¶
type PullRequestCheckSummary struct {
Error int `json:"error,omitempty"`
Failure int `json:"failure,omitempty"`
Pending int `json:"pending,omitempty"`
Running int `json:"running,omitempty"`
Success int `json:"success,omitempty"`
}
PullRequestCheckSummary represents the summary of checks for a pull request
type PullRequestChecksResponse ¶
type PullRequestChecksResponse struct {
Checks []PullRequestCheckInfo `json:"checks,omitempty"`
CommitSha string `json:"commit_sha,omitempty"`
}
PullRequestChecksResponse represents the response from the checks API
type PullRequestLabel ¶
type PullRequestLabel struct {
Color string `json:"color,omitempty"`
ID int `json:"id,omitempty"`
Key string `json:"key,omitempty"`
Scope int `json:"scope,omitempty"`
Value string `json:"value,omitempty"`
ValueColor string `json:"value_color,omitempty"`
ValueCount int `json:"value_count,omitempty"`
ValueID int `json:"value_id,omitempty"`
}
PullRequestLabel represents a label on a pull request
type PullRequestOptions ¶
type PullRequestOptions struct {
State []string `json:"state,omitempty"`
SourceRepoRef string `json:"source_repo_ref,omitempty"`
SourceBranch string `json:"source_branch,omitempty"`
TargetBranch string `json:"target_branch,omitempty"`
Query string `json:"query,omitempty"`
CreatedBy []int `json:"created_by,omitempty"`
Order string `json:"order,omitempty"`
Sort string `json:"sort,omitempty"`
CreatedLt int64 `json:"created_lt,omitempty"`
CreatedGt int64 `json:"created_gt,omitempty"`
UpdatedLt int64 `json:"updated_lt,omitempty"`
UpdatedGt int64 `json:"updated_gt,omitempty"`
Page int `json:"page,omitempty"`
Limit int `json:"limit,omitempty"`
AuthorID int `json:"author_id,omitempty"`
IncludeChecks bool `json:"include_checks,omitempty"`
}
PullRequestOptions represents the options for listing pull requests
type PullRequestRule ¶
type PullRequestRule struct {
Identifier string `json:"identifier,omitempty"`
RepoPath string `json:"repo_path,omitempty"`
SpacePath string `json:"space_path,omitempty"`
State string `json:"state,omitempty"`
Type string `json:"type,omitempty"`
}
PullRequestRule represents a rule for a pull request
type PullRequestStats ¶
type PullRequestStats struct {
Additions int `json:"additions,omitempty"`
Commits int `json:"commits,omitempty"`
Conversations int `json:"conversations,omitempty"`
Deletions int `json:"deletions,omitempty"`
FilesChanged int `json:"files_changed,omitempty"`
UnresolvedCount int `json:"unresolved_count,omitempty"`
}
PullRequestStats represents statistics for a pull request
type Repository ¶
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"`
}
Repository represents a repository in the system
type RepositoryOptions ¶
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"`
}
RepositoryOptions represents the options for listing repositories
type ResourceGroup ¶
type ResourceGroup struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Color string `json:"color,omitempty"`
Description string `json:"description,omitempty"`
ResourceFilter ResourceGroupResourceFilter `json:"resourceFilter,omitempty"`
}
type ResourceGroupResourceFilter ¶
type ResourceGroupResourceFilter struct {
Resources []ResourceSelectorV2 `json:"resources,omitempty"`
}
type ResourceSelectorV2 ¶
type RoleAssignment ¶
type RoleAssignment struct {
Identifier string `json:"identifier,omitempty"`
ResourceGroupIdentifier string `json:"resourceGroupIdentifier,omitempty"`
RoleIdentifier string `json:"roleIdentifier,omitempty"`
Principal AccessControlPrincipal `json:"principal,omitempty"`
Managed bool `json:"managed,omitempty"`
Internal bool `json:"internal,omitempty"`
Disabled bool `json:"disabled,omitempty"`
RoleReference *RoleReference `json:"roleReference,omitempty"`
}
type RoleAssignmentMetadataObject ¶
type RoleAssignmentMetadataObject struct {
Identifier string `json:"identifier,omitempty"`
RoleIdentifier string `json:"roleIdentifier,omitempty"`
RoleName string `json:"roleName,omitempty"`
RoleScopeLevel string `json:"roleScopeLevel,omitempty"`
ResourceGroupIdentifier string `json:"resourceGroupIdentifier,omitempty"`
ResourceGroupName string `json:"resourceGroupName,omitempty"`
ManagedRole bool `json:"managedRole,omitempty"`
ManagedRoleAssignment bool `json:"managedRoleAssignment,omitempty"`
}
type RoleAssignmentRequestBody ¶
type RoleAssignmentRequestBody struct {
ResourceGroupFilter []string `json:"resourceGroupFilter,omitempty"`
RoleFilter []string `json:"roleFilter,omitempty"`
PrincipalTypeFilter []string `json:"principalTypeFilter,omitempty"`
PrincipalScopeLevelFilter []string `json:"principalScopeLevelFilter,omitempty"`
PrincipalFilter []RoleAssignmentPrincipalFilter `json:"principalFilter,omitempty"`
}
type RoleAssignmentsOutputData ¶
type RoleAssignmentsOutputData struct {
TotalPages int64 `json:"totalPages,omitempty"`
TotalItems int64 `json:"totalItems,omitempty"`
PageItemCount int64 `json:"pageItemCount,omitempty"`
PageSize int64 `json:"pageSize,omitempty"`
Content []RoleAssignmentsOutputDataContent `json:"content,omitempty"`
}
type RoleAssignmentsOutputDataContent ¶
type RoleAssignmentsOutputDataContent struct {
RoleAssignment RoleAssignment `json:"roleAssignment,omitempty"`
Scope Scope `json:"scope,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
HarnessManaged bool `json:"harnessManaged,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type RoleBinding ¶
type RoleBinding struct {
ResourceGroupIdentifier string `json:"resourceGroupIdentifier,omitempty"`
RoleIdentifier string `json:"roleIdentifier,omitempty"`
RoleScopeLevel string `json:"roleScopeLevel,omitempty"`
RoleName string `json:"roleName,omitempty"`
ResourceGroupName string `json:"resourceGroupName,omitempty"`
ManagedRole bool `json:"managedRole"`
}
type RoleInfoOutputData ¶
type RoleInfoOutputData struct {
Role Role `json:"role,omitempty"`
Scope Scope `json:"scope,omitempty"`
HarnessManaged bool `json:"harnessManaged,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type RoleReference ¶
type RolesOutputData ¶
type RolesOutputData struct {
TotalPages int64 `json:"totalPages,omitempty"`
TotalItems int64 `json:"totalItems,omitempty"`
PageItemCount int64 `json:"pageItemCount,omitempty"`
PageSize int64 `json:"pageSize,omitempty"`
Content []RolesOutputDataContent `json:"content,omitempty"`
}
type RolesOutputDataContent ¶
type RolesOutputDataContent struct {
Role RoleData `json:"role,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
RoleAssignedToUserCount int64 `json:"roleAssignedToUserCount,omitempty"`
RoleAssignedToUserGroupCount int64 `json:"roleAssignedToUserGroupCount,omitempty"`
RoleAssignedToServiceAccountCount int64 `json:"roleAssignedToServiceAccountCount,omitempty"`
}
type Rule ¶
type Rule struct {
DataPointIdentifier string `json:"data_point_identifier"`
DataSourceIdentifier string `json:"data_source_identifier"`
Identifier *string `json:"identifier,omitempty"`
InputValues *[]InputValue `json:"input_values,omitempty"`
Operator string `json:"operator"`
Value *string `json:"value,omitempty"`
}
type RunLoadTestRequest ¶
type RunLoadTestRequest struct {
LoadTestID string `json:"loadTestId"`
TargetUsers int `json:"targetUsers,omitempty"`
DurationSeconds int `json:"durationSeconds,omitempty"`
SpawnRate int `json:"spawnRate,omitempty"`
}
RunLoadTestRequest represents the request body to run a load test
type SavingsDetail ¶
type SavingsDetail struct {
Table *SavingsDetailTable `json:"table,omitempty"`
Chart []*SavingsDetailChart `json:"chart,omitempty"`
}
type SavingsDetailChart ¶
type SavingsDetailTable ¶
type Scope ¶
type Scope struct {
AccountID string `json:"accountIdentifier"`
OrgID string `json:"orgIdentifier"`
ProjectID string `json:"projectIdentifier"`
}
Scope represents a scope in the system
type Scorecard ¶
type Scorecard struct {
Checks []Check `json:"checks"`
ChecksMissing []string `json:"checks_missing,omitempty"`
Components int `json:"components,omitempty"`
Description string `json:"description,omitempty"`
Identifier string `json:"identifier"`
Name string `json:"name"`
Percentage float64 `json:"percentage,omitempty"`
Published bool `json:"published,omitempty"`
}
type ScorecardChecksDetails ¶
type ScorecardDetails ¶
type ScorecardDetails struct {
ChecksMissing []string `json:"checks_missing,omitempty"`
Components int `json:"components,omitempty"`
Description string `json:"description,omitempty"`
Filter struct {
Kind string `json:"kind"`
Lifecycle []string `json:"lifecycle,omitempty"`
Owners []string `json:"owners,omitempty"`
Scopes []string `json:"scopes,omitempty"`
Tags []string `json:"tags,omitempty"`
Type string `json:"type,omitempty"`
} `json:"filter"`
Identifier string `json:"identifier"`
Name string `json:"name"`
OnDemand bool `json:"on_demand,omitempty"`
Percentage float64 `json:"percentage,omitempty"`
Published bool `json:"published"`
WeightageStrategy string `json:"weightage_strategy,omitempty"`
}
type ScorecardDetailsResponse ¶
type ScorecardDetailsResponse struct {
Checks []ScorecardChecksDetails `json:"checks"`
Scorecard ScorecardDetails `json:"scorecard"`
}
type ScorecardResponse ¶
type ScorecardResponse struct {
Scorecard Scorecard `json:"scorecard,omitempty"`
}
type ScorecardScore ¶
type ScorecardScoreResponse ¶
type ScorecardScoreResponse struct {
OverallScore int `json:"overall_score"`
ScorecardScores []ScorecardScore `json:"scorecard_scores"`
}
type ScorecardStats ¶
type ScorecardStats struct {
Kind string `json:"kind"`
Name string `json:"name"`
Namespace string `json:"namespace"`
Owner string `json:"owner"`
Score int `json:"score"`
System string `json:"system"`
Type string `json:"type"`
}
ScorecardStats ScorecardStats
type ScorecardStatsResponse ¶
type ScorecardStatsResponse struct {
Name string `json:"name"`
Stats []ScorecardStats `json:"stats"`
Timestamp *int64 `json:"timestamp,omitempty"`
}
ScorecardStatsResponse ScorecardStatsResponse
type ScorecardStatsResponseWithHumanReadableTime ¶
type ScorecardStatsResponseWithHumanReadableTime struct {
Name string `json:"name"`
Stats []ScorecardStats `json:"stats"`
Time string `json:"time,omitempty"`
}
type ScorecardSummaryInfo ¶
type ScorecardSummaryInfo struct {
ChecksStatuses []CheckStatus `json:"checks_statuses"`
Description string `json:"description"`
RecalibrateInfo ScorecardRecalibrateInfo `json:"recalibrate_info,omitempty"`
Score int `json:"score"`
ScorecardIdentifier string `json:"scorecard_identifier"`
ScorecardName string `json:"scorecard_name"`
Timestamp int64 `json:"timestamp"`
}
type ScorecardSummaryResponse ¶
type ScorecardSummaryResponse struct {
ScorecardsSummary []ScorecardSummaryInfo `json:"scorecards_summary"`
}
type SearchTechDocsRequest ¶
type SearchTechDocsRequest struct {
Query string `json:"query"`
}
type SearchTechDocsResponse ¶
type SearchTechDocsResponse []MatchingDoc
type Secret ¶
type Secret struct {
Type string `json:"type"`
Name string `json:"name"`
Identifier string `json:"identifier"`
Tags map[string]string `json:"tags"`
Description string `json:"description"`
Spec SecretSpec `json:"spec"`
}
Secret represents the details of a Harness secret
type SecretData ¶
type SecretData struct {
Secret Secret `json:"secret"`
CreatedAt int64 `json:"createdAt"`
UpdatedAt int64 `json:"updatedAt"`
Draft bool `json:"draft"`
}
SecretData represents the data field in the secret response
type SecretFilterProperties ¶
type SecretFilterProperties struct {
SecretName string `json:"secretName,omitempty"`
SecretIdentifier string `json:"secretIdentifier,omitempty"`
SecretTypes []string `json:"secretTypes,omitempty"`
SecretManagerIdentifiers []string `json:"secretManagerIdentifiers,omitempty"`
Description string `json:"description,omitempty"`
SearchTerm string `json:"searchTerm,omitempty"`
IncludeSecretsFromEverySubScope bool `json:"includeSecretsFromEverySubScope,omitempty"`
IncludeAllSecretsAccessibleAtScope bool `json:"includeAllSecretsAccessibleAtScope,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
FilterType string `json:"filterType,omitempty"`
}
SecretFilterProperties represents the filter properties for listing secrets
type SecretGetOptions ¶
type SecretGetOptions struct {
}
SecretGetOptions represents options for getting a secret
type SecretResponse ¶
type SecretResponse struct {
Status string `json:"status"`
Data SecretData `json:"data"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId"`
}
SecretResponse represents the response from the Harness secrets API
type SecretSpec ¶
type SecretSpec struct {
SecretManagerIdentifier string `json:"secretManagerIdentifier"`
AdditionalMetadata interface{} `json:"additionalMetadata"`
}
SecretSpec represents the specification of a secret
type Service ¶
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"`
}
Service represents a service in Harness
type ServiceAccountData ¶
type ServiceAccountData struct {
ServiceAccount ServiceAccountInfo `json:"serviceAccount,omitempty"`
CreatedAt int64 `json:"createdAt,omitempty"`
LastModifiedAt int64 `json:"lastModifiedAt,omitempty"`
TokensCount int64 `json:"tokensCount,omitempty"`
RoleAssignmentMetadataObject []RoleAssignmentMetadataObject `json:"roleAssignmentsMetadataDTO,omitempty"`
CreatedAtTime string
LastModifiedAtTime string
}
type ServiceAccountInfo ¶
type ServiceAccountInfo struct {
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Email string `json:"email,omitempty"`
Description string `json:"description,omitempty"`
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
}
type ServiceListResponse ¶
type ServiceListResponse struct {
Data struct {
Content []Service `json:"content"`
TotalPages int `json:"totalPages"`
TotalElements int `json:"totalElements"`
PageSize int `json:"pageSize"`
PageIndex int `json:"pageIndex"`
} `json:"data"`
}
ServiceListResponse represents the response from the list services API
type ServiceOptions ¶
type ServiceOptions struct {
Page int `json:"page,omitempty"`
Limit int `json:"limit,omitempty"`
Sort string `json:"sort,omitempty"`
Order string `json:"order,omitempty"`
}
ServiceOptions represents the options for listing services
type ServiceResponse ¶
type ServiceResponse struct {
Data Service `json:"data"`
}
ServiceResponse represents the response from the get service API
type Setting ¶
type Setting struct {
Identifier string `json:"identifier"`
Name string `json:"name"`
OrgIdentifier *string `json:"orgIdentifier"`
ProjectIdentifier *string `json:"projectIdentifier"`
Category string `json:"category"`
GroupIdentifier string `json:"groupIdentifier"`
ValueType string `json:"valueType"`
AllowedValues []string `json:"allowedValues"`
AllowOverrides bool `json:"allowOverrides"`
Value *string `json:"value"`
DefaultValue *string `json:"defaultValue"`
SettingSource string `json:"settingSource"`
IsSettingEditable bool `json:"isSettingEditable"`
AllowedScopes []string `json:"allowedScopes"`
}
Setting represents the details of a Harness setting
type SettingItem ¶
type SettingItem struct {
Setting Setting `json:"setting"`
LastModifiedAt *int64 `json:"lastModifiedAt"`
}
SettingItem represents a single setting in the Harness settings API response
type SettingsListOptions ¶
type SettingsListOptions struct {
Category string
Group string
IncludeParentScopes bool
PaginationOptions
}
SettingsListOptions represents options for listing settings
type SettingsResponse ¶
type SettingsResponse struct {
Status string `json:"status"`
Data []SettingItem `json:"data"`
MetaData interface{} `json:"metaData"`
CorrelationID string `json:"correlationId"`
}
SettingsResponse represents the response from the Harness settings API
type SortInfo ¶
type SortInfo struct {
Empty bool `json:"empty,omitempty"`
Unsorted bool `json:"unsorted,omitempty"`
Sorted bool `json:"sorted,omitempty"`
}
SortInfo represents sorting information
type StopLoadTestResponse ¶
StopLoadTestResponse represents the response from stopping a load test run
type TemplateListOptions ¶
type TemplateListOptions struct {
// Pagination parameters
Page int `json:"page,omitempty"` // Default: 0
Limit int `json:"limit,omitempty"` // Default: 30
// Sorting parameters
Sort string `json:"sort,omitempty"` // Enum: "identifier" "name" "updated"
Order string `json:"order,omitempty"` // Enum: "ASC" "DESC"
// Filtering parameters
SearchTerm string `json:"search_term,omitempty"` // Filter resources having attributes matching with search term
Type string `json:"type,omitempty"` // Template List Type: Enum: "STABLE_TEMPLATE" "LAST_UPDATES_TEMPLATE" "ALL"
Recursive bool `json:"recursive,omitempty"` // Default: false - Specify true if all accessible Templates are to be included
// List filtering
Names []string `json:"names,omitempty"` // Template names for filtering
Identifiers []string `json:"identifiers,omitempty"` // Template Ids for Filtering
EntityTypes []string `json:"entity_types,omitempty"` // Type of Template - Enum: "Step" "Stage" "Pipeline" "CustomDeployment" "MonitoredService" "SecretManager"
ChildTypes []string `json:"child_types,omitempty"` // Child types describe the type of Step or stage
}
TemplateListOptions represents options for listing templates
type TemplateListOutput ¶
type TemplateListOutput struct {
Templates []TemplateOutput `json:"templates"`
}
TemplateListOutput is a custom struct for template list output with numeric timestamps
func ToTemplateResponse ¶
func ToTemplateResponse(data *TemplateMetaDataList) *TemplateListOutput
ToTemplateResponse processes the raw API response and adds human-readable timestamps
type TemplateMetaDataList ¶
type TemplateMetaDataList []TemplateMetadataSummaryResponse
TemplateMetaDataList represents a list of template metadata
type TemplateMetadataSummaryResponse ¶
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"`
}
TemplateMetadataSummaryResponse represents a template metadata summary
type TemplateOutput ¶
type TemplateOutput 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 string `json:"updated,omitempty"`
StoreType string `json:"store_type,omitempty"`
ConnectorRef string `json:"connector_ref,omitempty"`
StableTemplate bool `json:"stable_template,omitempty"`
}
TemplateOutput is a custom struct for template output with numeric timestamps
type TimeSeriesDataPoints ¶
type TimeSeriesDataPoints struct {
Values []CcmDataPoint `json:"values,omitempty"`
Time int64 `json:"time,omitempty"`
}
TimeSeriesDataPoints represents the data points for a time series
type TriggerExtraInfo ¶
type TriggerExtraInfo struct {
Email string `json:"email,omitempty"`
UniqueID string `json:"uniqueId,omitempty"`
}
TriggerExtraInfo represents additional information about the trigger
type TriggerListItem ¶
type TriggerListItem struct {
Name string `json:"name,omitempty"`
Identifier string `json:"identifier,omitempty"`
Description string `json:"description,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Type string `json:"type,omitempty"`
Enabled bool `json:"enabled,omitempty"`
Yaml string `json:"yaml,omitempty"`
WebhookUrl string `json:"webhookUrl,omitempty"`
RegistrationStatus string `json:"registrationStatus,omitempty"`
YamlVersion string `json:"yamlVersion,omitempty"`
TriggerStatus *TriggerStatus `json:"triggerStatus,omitempty"`
WebhookDetails *WebhookDetails `json:"webhookDetails,omitempty"`
Executions []int `json:"executions,omitempty"`
WebhookCurlCommand string `json:"webhookCurlCommand,omitempty"`
PipelineInputOutdated bool `json:"pipelineInputOutdated,omitempty"`
// Keeping these fields for backward compatibility
CreatedAt int64 `json:"createdAt,omitempty"`
LastUpdatedAt int64 `json:"lastUpdatedAt,omitempty"`
TargetIdentifier string `json:"targetIdentifier,omitempty"`
PipelineIdentifier string `json:"pipelineIdentifier,omitempty"`
}
type TriggerListOptions ¶
type TriggerListOptions struct {
PaginationOptions
TriggerNames []string `json:"triggerNames,omitempty"`
TriggerIdentifiers []string `json:"triggerIdentifiers,omitempty"`
TriggerTypes []string `json:"triggerTypes,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
SearchTerm string `json:"searchTerm,omitempty"`
TargetIdentifier string `json:"targetIdentifier,omitempty"`
Filter string `json:"filter,omitempty"`
}
TriggerListOptions represents the options for listing triggers
type TriggerStatus ¶
type TriggerStatus struct {
PollingSubscriptionStatus interface{} `json:"pollingSubscriptionStatus,omitempty"`
ValidationStatus *ValidationStatus `json:"validationStatus,omitempty"`
WebhookAutoRegistrationStatus *WebhookAutoRegistrationStatus `json:"webhookAutoRegistrationStatus,omitempty"`
WebhookInfo *WebhookInfo `json:"webhookInfo,omitempty"`
Status string `json:"status,omitempty"`
DetailMessages []string `json:"detailMessages,omitempty"`
LastPollingUpdate interface{} `json:"lastPollingUpdate,omitempty"`
LastPolled interface{} `json:"lastPolled,omitempty"`
}
TriggerStatus contains the status information for a trigger
type UTMInfo ¶
type UTMInfo struct {
UTMSource interface{} `json:"utmSource,omitempty"`
UTMContent interface{} `json:"utmContent,omitempty"`
UTMMedium interface{} `json:"utmMedium,omitempty"`
UTMTerm interface{} `json:"utmTerm,omitempty"`
UTMCampaign interface{} `json:"utmCampaign,omitempty"`
}
type UnitProgress ¶
type UserBasicInfo ¶
type UserDetail ¶
type UserDetail struct {
UserID string `json:"userID"`
Username string `json:"username"`
Email string `json:"email"`
}
UserDetail represents user information in chaos responses
type UserGroupInfoData ¶
type UserGroupInfoData struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Users []UserBasicInfo `json:"users,omitempty"`
Description string `json:"description,omitempty"`
}
type UserGroupInfoDataId ¶
type UserGroupInfoDataId struct {
AccountIdentifier string `json:"accountIdentifier,omitempty"`
OrgIdentifier string `json:"orgIdentifier,omitempty"`
ProjectIdentifier string `json:"projectIdentifier,omitempty"`
Identifier string `json:"identifier,omitempty"`
Name string `json:"name,omitempty"`
Users []string `json:"users,omitempty"`
Description string `json:"description,omitempty"`
}
type UserInfoData ¶
type UserInfoData struct {
User UserData `json:"user,omitempty"`
RoleAssignmentMetadata []RoleAssignmentMetadataObject `json:"roleAssignmentMetadata,omitempty"`
}
type UserPreferences ¶
type UserPreferences struct {
RecentSelectedScopes string `json:"recent_selected_scopes,omitempty"`
LandingPageURL interface{} `json:"landing_page_url,omitempty"`
}
type UsersOutput ¶
type UsersOutput struct {
TotalPages int64 `json:"totalPages,omitempty"`
TotalItems int64 `json:"totalItems,omitempty"`
PageItemCount int64 `json:"pageItemCount,omitempty"`
PageSize int64 `json:"pageSize,omitempty"`
Content []UserInfoData `json:"content,omitempty"`
}
type UsersRequestBody ¶
type ValidationStatus ¶
type ValidationStatus struct {
StatusResult string `json:"statusResult,omitempty"`
DetailedMessage string `json:"detailedMessage,omitempty"`
}
ValidationStatus represents the validation status of a trigger
type Variable ¶
type Variable struct {
VariableMinimum `json:",inline"`
Path string `json:"path"`
Category string `json:"category"`
Description string `json:"description"`
TooltipID string `json:"tooltipId"`
Type string `json:"type"`
Stringify bool `json:"stringify"`
Required bool `json:"required"`
AllowedValues []interface{} `json:"allowedValues"`
Default interface{} `json:"default"`
Tags []string `json:"tags"`
Validator string `json:"validator"`
}
type VariableMinimum ¶
type VariableMinimum struct {
Name string `json:"name"`
Value interface{} `json:"value"`
}
type WebhookAutoRegistrationStatus ¶
type WebhookAutoRegistrationStatus struct {
RegistrationResult string `json:"registrationResult,omitempty"`
DetailedMessage string `json:"detailedMessage,omitempty"`
}
WebhookAutoRegistrationStatus represents the webhook registration status
type WebhookDetails ¶
type WebhookDetails struct {
WebhookSecret string `json:"webhookSecret,omitempty"`
WebhookSourceRepo string `json:"webhookSourceRepo,omitempty"`
}
WebhookDetails contains webhook configuration details
type WebhookInfo ¶
type WebhookInfo struct {
WebhookId string `json:"webhookId,omitempty"`
}
WebhookInfo contains webhook identification information
type WorkflowRevision ¶
Source Files
¶
- accessControl.go
- audit.go
- audit_yaml.go
- ccmanomalies.go
- ccmcommitments.go
- ccmcosts.go
- ccmgraphqlperspectives.go
- ccmperspectives.go
- ccmrecommendations.go
- chaos.go
- chatbot.go
- connectors.go
- dashboard.go
- delegate.go
- delegate_token.go
- environment.go
- epochutils.go
- error.go
- fme.go
- idp.go
- infrastructure.go
- loadtest.go
- logs.go
- pipeline.go
- pullrequest.go
- repositories.go
- scope.go
- secrets.go
- service.go
- settings.go
- template.go