github.com/newrelic/newrelic-client-go@v1.1.0/pkg/cloud/types.go (about) 1 // Code generated by tutone: DO NOT EDIT 2 package cloud 3 4 import ( 5 "encoding/json" 6 "fmt" 7 8 "github.com/newrelic/newrelic-client-go/pkg/nrtime" 9 ) 10 11 // CloudMetricCollectionMode - How metrics will be collected. 12 type CloudMetricCollectionMode string 13 14 var CloudMetricCollectionModeTypes = struct { 15 // Metrics will be pulled by NewRelic 16 PULL CloudMetricCollectionMode 17 // Metrics will be pushed by the provider 18 PUSH CloudMetricCollectionMode 19 }{ 20 // Metrics will be pulled by NewRelic 21 PULL: "PULL", 22 // Metrics will be pushed by the provider 23 PUSH: "PUSH", 24 } 25 26 // Account - The `Account` object provides general data about the account, as well as 27 // being the entry point into more detailed data about a single account. 28 // 29 // Account configuration data is queried through this object, as well as 30 // telemetry data that is specific to a single account. 31 type Account struct { 32 // The `cloud` field provides access to cloud integrations configuration data. 33 // 34 // For details and query examples visit 35 // [our docs](https://docs.newrelic.com/docs/apis/graphql-api/tutorials/manage-your-aws-azure-google-cloud-integrations-graphql-api). 36 Cloud CloudAccountFields `json:"cloud,omitempty"` 37 // 38 ID int `json:"id,omitempty"` 39 // 40 LicenseKey string `json:"licenseKey,omitempty"` 41 // 42 Name string `json:"name,omitempty"` 43 } 44 45 // Actor - The `Actor` object contains fields that are scoped to the API user's access level. 46 type Actor struct { 47 // The `cloud` field provides access to cloud integrations configuration data scoped to the Actor. 48 Cloud CloudActorFields `json:"cloud,omitempty"` 49 // The `account` field is the entry point into data that is scoped to a single account. 50 Account Account `json:"account,omitempty"` 51 } 52 53 // CloudAPIgatewayIntegration - API Gateway Integration 54 type CloudAPIgatewayIntegration struct { 55 // Specify each AWS region that includes the resources that you want to monitor. 56 AwsRegions []string `json:"awsRegions,omitempty"` 57 // The object creation date, in epoch (Unix) time 58 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 59 // The cloud service integration identifier. 60 ID int `json:"id,omitempty"` 61 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 62 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 63 // The parent linked account identifier. 64 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 65 // The data polling interval in seconds. 66 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 67 // The cloud service integration name. 68 Name string `json:"name,omitempty"` 69 // The parent NewRelic account identifier. 70 NrAccountId int `json:"nrAccountId"` 71 // The cloud service used in the integration. 72 Service CloudService `json:"service,omitempty"` 73 // Specify each name or prefix for the Stages that you want to monitor. Filter values are case-sensitive. 74 StagePrefixes []string `json:"stagePrefixes,omitempty"` 75 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 76 TagKey string `json:"tagKey,omitempty"` 77 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 78 TagValue string `json:"tagValue,omitempty"` 79 // The object last update date, in epoch (Unix) time 80 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 81 } 82 83 func (x *CloudAPIgatewayIntegration) ImplementsCloudIntegration() {} 84 85 // CloudAPIgatewayIntegrationInput - Amazon API Gateway 86 type CloudAPIgatewayIntegrationInput struct { 87 // Specify each AWS region that includes the resources that you want to monitor. 88 AwsRegions []string `json:"awsRegions,omitempty"` 89 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 90 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 91 // The linked account identifier. 92 LinkedAccountId int `json:"linkedAccountId"` 93 // The data polling interval in seconds. 94 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 95 // Specify each name or prefix for the Stages that you want to monitor. Filter values are case-sensitive. 96 StagePrefixes []string `json:"stagePrefixes,omitempty"` 97 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 98 TagKey string `json:"tagKey,omitempty"` 99 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 100 TagValue string `json:"tagValue,omitempty"` 101 } 102 103 // CloudAccountFields - Cloud integrations related data, including configured integrations and 104 // all available cloud provider service integrations. 105 type CloudAccountFields struct { 106 // Get one linked provider account. 107 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 108 // Get all linked cloud provider accounts. 109 LinkedAccounts []CloudLinkedAccount `json:"linkedAccounts,omitempty"` 110 // Get one cloud provider by short name. 111 Provider CloudProviderInterface `json:"provider,omitempty"` 112 // Get all available cloud providers. 113 Providers []CloudProviderInterface `json:"providers,omitempty"` 114 } 115 116 // CloudAccountMutationError - Account Mutation Error 117 type CloudAccountMutationError struct { 118 // The passed linked account identifier. 119 LinkedAccountId int `json:"linkedAccountId,omitempty"` 120 // The error message. 121 Message string `json:"message"` 122 // The passed newrelic account identifier. 123 NrAccountId int `json:"nrAccountId"` 124 // The passed provider slug. 125 ProviderSlug string `json:"providerSlug,omitempty"` 126 // The error status. 127 Type string `json:"type"` 128 } 129 130 // CloudActorFields - 131 type CloudActorFields struct { 132 // Get all linked cloud provider accounts scoped to the Actor. 133 LinkedAccounts []CloudLinkedAccount `json:"linkedAccounts,omitempty"` 134 } 135 136 // CloudAlbIntegration - ALB/NLB Integration 137 type CloudAlbIntegration struct { 138 // Specify each AWS region that includes the resources that you want to monitor. 139 AwsRegions []string `json:"awsRegions,omitempty"` 140 // The object creation date, in epoch (Unix) time 141 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 142 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 143 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 144 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 145 FetchTags bool `json:"fetchTags,omitempty"` 146 // The cloud service integration identifier. 147 ID int `json:"id,omitempty"` 148 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 149 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 150 // The parent linked account identifier. 151 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 152 // Specify each name or prefix for the LBs that you want to monitor. Filter values are case-sensitive. 153 LoadBalancerPrefixes []string `json:"loadBalancerPrefixes,omitempty"` 154 // The data polling interval in seconds. 155 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 156 // The cloud service integration name. 157 Name string `json:"name,omitempty"` 158 // The parent NewRelic account identifier. 159 NrAccountId int `json:"nrAccountId"` 160 // The cloud service used in the integration. 161 Service CloudService `json:"service,omitempty"` 162 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 163 TagKey string `json:"tagKey,omitempty"` 164 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 165 TagValue string `json:"tagValue,omitempty"` 166 // The object last update date, in epoch (Unix) time 167 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 168 } 169 170 func (x *CloudAlbIntegration) ImplementsCloudIntegration() {} 171 172 // CloudAlbIntegrationInput - Elastic Load Balancing - Application Load Balancer (ALB) 173 type CloudAlbIntegrationInput struct { 174 // Specify each AWS region that includes the resources that you want to monitor. 175 AwsRegions []string `json:"awsRegions,omitempty"` 176 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 177 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 178 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 179 FetchTags bool `json:"fetchTags,omitempty"` 180 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 181 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 182 // The linked account identifier. 183 LinkedAccountId int `json:"linkedAccountId"` 184 // Specify each name or prefix for the LBs that you want to monitor. Filter values are case-sensitive. 185 LoadBalancerPrefixes []string `json:"loadBalancerPrefixes,omitempty"` 186 // The data polling interval in seconds. 187 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 188 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 189 TagKey string `json:"tagKey,omitempty"` 190 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 191 TagValue string `json:"tagValue,omitempty"` 192 } 193 194 // CloudAutoscalingIntegration - AutoScaling Integration 195 type CloudAutoscalingIntegration struct { 196 // Specify each AWS region that includes the resources that you want to monitor. 197 AwsRegions []string `json:"awsRegions,omitempty"` 198 // The object creation date, in epoch (Unix) time 199 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 200 // The cloud service integration identifier. 201 ID int `json:"id,omitempty"` 202 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 203 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 204 // The parent linked account identifier. 205 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 206 // The data polling interval in seconds. 207 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 208 // The cloud service integration name. 209 Name string `json:"name,omitempty"` 210 // The parent NewRelic account identifier. 211 NrAccountId int `json:"nrAccountId"` 212 // The cloud service used in the integration. 213 Service CloudService `json:"service,omitempty"` 214 // The object last update date, in epoch (Unix) time 215 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 216 } 217 218 func (x *CloudAutoscalingIntegration) ImplementsCloudIntegration() {} 219 220 // CloudAutoscalingIntegrationInput - AWS Auto Scaling 221 type CloudAutoscalingIntegrationInput struct { 222 // Specify each AWS region that includes the resources that you want to monitor. 223 AwsRegions []string `json:"awsRegions,omitempty"` 224 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 225 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 226 // The linked account identifier. 227 LinkedAccountId int `json:"linkedAccountId"` 228 // The data polling interval in seconds. 229 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 230 } 231 232 // CloudAwsAppsyncIntegration - AppSync Integration 233 type CloudAwsAppsyncIntegration struct { 234 // Specify each AWS region that includes the resources that you want to monitor. 235 AwsRegions []string `json:"awsRegions,omitempty"` 236 // The object creation date, in epoch (Unix) time 237 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 238 // The cloud service integration identifier. 239 ID int `json:"id,omitempty"` 240 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 241 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 242 // The parent linked account identifier. 243 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 244 // The data polling interval in seconds. 245 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 246 // The cloud service integration name. 247 Name string `json:"name,omitempty"` 248 // The parent NewRelic account identifier. 249 NrAccountId int `json:"nrAccountId"` 250 // The cloud service used in the integration. 251 Service CloudService `json:"service,omitempty"` 252 // The object last update date, in epoch (Unix) time 253 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 254 } 255 256 func (x *CloudAwsAppsyncIntegration) ImplementsCloudIntegration() {} 257 258 // CloudAwsAppsyncIntegrationInput - AppSync 259 type CloudAwsAppsyncIntegrationInput struct { 260 // Specify each AWS region that includes the resources that you want to monitor. 261 AwsRegions []string `json:"awsRegions,omitempty"` 262 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 263 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 264 // The linked account identifier. 265 LinkedAccountId int `json:"linkedAccountId"` 266 // The data polling interval in seconds. 267 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 268 } 269 270 // CloudAwsAthenaIntegration - Athena Integration 271 type CloudAwsAthenaIntegration struct { 272 // Specify each AWS region that includes the resources that you want to monitor. 273 AwsRegions []string `json:"awsRegions,omitempty"` 274 // The object creation date, in epoch (Unix) time 275 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 276 // The cloud service integration identifier. 277 ID int `json:"id,omitempty"` 278 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 279 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 280 // The parent linked account identifier. 281 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 282 // The data polling interval in seconds. 283 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 284 // The cloud service integration name. 285 Name string `json:"name,omitempty"` 286 // The parent NewRelic account identifier. 287 NrAccountId int `json:"nrAccountId"` 288 // The cloud service used in the integration. 289 Service CloudService `json:"service,omitempty"` 290 // The object last update date, in epoch (Unix) time 291 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 292 } 293 294 func (x *CloudAwsAthenaIntegration) ImplementsCloudIntegration() {} 295 296 // CloudAwsAthenaIntegrationInput - Athena 297 type CloudAwsAthenaIntegrationInput struct { 298 // Specify each AWS region that includes the resources that you want to monitor. 299 AwsRegions []string `json:"awsRegions,omitempty"` 300 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 301 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 302 // The linked account identifier. 303 LinkedAccountId int `json:"linkedAccountId"` 304 // The data polling interval in seconds. 305 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 306 } 307 308 // CloudAwsCognitoIntegration - Cognito Integration 309 type CloudAwsCognitoIntegration struct { 310 // Specify each AWS region that includes the resources that you want to monitor. 311 AwsRegions []string `json:"awsRegions,omitempty"` 312 // The object creation date, in epoch (Unix) time 313 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 314 // The cloud service integration identifier. 315 ID int `json:"id,omitempty"` 316 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 317 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 318 // The parent linked account identifier. 319 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 320 // The data polling interval in seconds. 321 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 322 // The cloud service integration name. 323 Name string `json:"name,omitempty"` 324 // The parent NewRelic account identifier. 325 NrAccountId int `json:"nrAccountId"` 326 // The cloud service used in the integration. 327 Service CloudService `json:"service,omitempty"` 328 // The object last update date, in epoch (Unix) time 329 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 330 } 331 332 func (x *CloudAwsCognitoIntegration) ImplementsCloudIntegration() {} 333 334 // CloudAwsCognitoIntegrationInput - Cognito 335 type CloudAwsCognitoIntegrationInput struct { 336 // Specify each AWS region that includes the resources that you want to monitor. 337 AwsRegions []string `json:"awsRegions,omitempty"` 338 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 339 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 340 // The linked account identifier. 341 LinkedAccountId int `json:"linkedAccountId"` 342 // The data polling interval in seconds. 343 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 344 } 345 346 // CloudAwsConnectIntegration - Connect Integration 347 type CloudAwsConnectIntegration struct { 348 // Specify each AWS region that includes the resources that you want to monitor. 349 AwsRegions []string `json:"awsRegions,omitempty"` 350 // The object creation date, in epoch (Unix) time 351 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 352 // The cloud service integration identifier. 353 ID int `json:"id,omitempty"` 354 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 355 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 356 // The parent linked account identifier. 357 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 358 // The data polling interval in seconds. 359 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 360 // The cloud service integration name. 361 Name string `json:"name,omitempty"` 362 // The parent NewRelic account identifier. 363 NrAccountId int `json:"nrAccountId"` 364 // The cloud service used in the integration. 365 Service CloudService `json:"service,omitempty"` 366 // The object last update date, in epoch (Unix) time 367 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 368 } 369 370 func (x *CloudAwsConnectIntegration) ImplementsCloudIntegration() {} 371 372 // CloudAwsConnectIntegrationInput - Connect 373 type CloudAwsConnectIntegrationInput struct { 374 // Specify each AWS region that includes the resources that you want to monitor. 375 AwsRegions []string `json:"awsRegions,omitempty"` 376 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 377 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 378 // The linked account identifier. 379 LinkedAccountId int `json:"linkedAccountId"` 380 // The data polling interval in seconds. 381 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 382 } 383 384 // CloudAwsDirectconnectIntegration - Direct Connect Integration 385 type CloudAwsDirectconnectIntegration struct { 386 // Specify each AWS region that includes the resources that you want to monitor. 387 AwsRegions []string `json:"awsRegions,omitempty"` 388 // The object creation date, in epoch (Unix) time 389 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 390 // The cloud service integration identifier. 391 ID int `json:"id,omitempty"` 392 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 393 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 394 // The parent linked account identifier. 395 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 396 // The data polling interval in seconds. 397 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 398 // The cloud service integration name. 399 Name string `json:"name,omitempty"` 400 // The parent NewRelic account identifier. 401 NrAccountId int `json:"nrAccountId"` 402 // The cloud service used in the integration. 403 Service CloudService `json:"service,omitempty"` 404 // The object last update date, in epoch (Unix) time 405 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 406 } 407 408 func (x *CloudAwsDirectconnectIntegration) ImplementsCloudIntegration() {} 409 410 // CloudAwsDirectconnectIntegrationInput - Direct Connect 411 type CloudAwsDirectconnectIntegrationInput struct { 412 // Specify each AWS region that includes the resources that you want to monitor. 413 AwsRegions []string `json:"awsRegions,omitempty"` 414 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 415 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 416 // The linked account identifier. 417 LinkedAccountId int `json:"linkedAccountId"` 418 // The data polling interval in seconds. 419 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 420 } 421 422 // CloudAwsDisableIntegrationsInput - List of integrations 423 type CloudAwsDisableIntegrationsInput struct { 424 // API Gateway integration 425 APIgateway []CloudDisableAccountIntegrationInput `json:"apigateway,omitempty"` 426 // ALB/NLB integration 427 Alb []CloudDisableAccountIntegrationInput `json:"alb,omitempty"` 428 // AutoScaling integration 429 Autoscaling []CloudDisableAccountIntegrationInput `json:"autoscaling,omitempty"` 430 // AppSync integration 431 AwsAppsync []CloudDisableAccountIntegrationInput `json:"awsAppsync,omitempty"` 432 // Athena integration 433 AwsAthena []CloudDisableAccountIntegrationInput `json:"awsAthena,omitempty"` 434 // Cognito integration 435 AwsCognito []CloudDisableAccountIntegrationInput `json:"awsCognito,omitempty"` 436 // Connect integration 437 AwsConnect []CloudDisableAccountIntegrationInput `json:"awsConnect,omitempty"` 438 // Direct Connect integration 439 AwsDirectconnect []CloudDisableAccountIntegrationInput `json:"awsDirectconnect,omitempty"` 440 // DocumentDB integration 441 AwsDocdb []CloudDisableAccountIntegrationInput `json:"awsDocdb,omitempty"` 442 // FSx integration 443 AwsFsx []CloudDisableAccountIntegrationInput `json:"awsFsx,omitempty"` 444 // Glue integration 445 AwsGlue []CloudDisableAccountIntegrationInput `json:"awsGlue,omitempty"` 446 // Kinesis Data Analytics integration 447 AwsKinesisanalytics []CloudDisableAccountIntegrationInput `json:"awsKinesisanalytics,omitempty"` 448 // Elemental MediaConvert integration 449 AwsMediaconvert []CloudDisableAccountIntegrationInput `json:"awsMediaconvert,omitempty"` 450 // MediaPackage VOD integration 451 AwsMediapackagevod []CloudDisableAccountIntegrationInput `json:"awsMediapackagevod,omitempty"` 452 // Fetch Metadata for AWS integrations integration 453 AwsMetadata []CloudDisableAccountIntegrationInput `json:"awsMetadata,omitempty"` 454 // MQ integration 455 AwsMq []CloudDisableAccountIntegrationInput `json:"awsMq,omitempty"` 456 // Managed Kafka integration 457 AwsMsk []CloudDisableAccountIntegrationInput `json:"awsMsk,omitempty"` 458 // Neptune integration 459 AwsNeptune []CloudDisableAccountIntegrationInput `json:"awsNeptune,omitempty"` 460 // QLDB integration 461 AwsQldb []CloudDisableAccountIntegrationInput `json:"awsQldb,omitempty"` 462 // Route53 Resolver integration 463 AwsRoute53resolver []CloudDisableAccountIntegrationInput `json:"awsRoute53resolver,omitempty"` 464 // Step Functions integration 465 AwsStates []CloudDisableAccountIntegrationInput `json:"awsStates,omitempty"` 466 // Fetch tags for all integrations integration 467 AwsTagsGlobal []CloudDisableAccountIntegrationInput `json:"awsTagsGlobal,omitempty"` 468 // Transit Gateway integration 469 AwsTransitgateway []CloudDisableAccountIntegrationInput `json:"awsTransitgateway,omitempty"` 470 // WAF integration 471 AwsWaf []CloudDisableAccountIntegrationInput `json:"awsWaf,omitempty"` 472 // WAFV2 integration 473 AwsWafv2 []CloudDisableAccountIntegrationInput `json:"awsWafv2,omitempty"` 474 // X-Ray integration 475 AwsXray []CloudDisableAccountIntegrationInput `json:"awsXray,omitempty"` 476 // Billing integration 477 Billing []CloudDisableAccountIntegrationInput `json:"billing,omitempty"` 478 // CloudFront integration 479 Cloudfront []CloudDisableAccountIntegrationInput `json:"cloudfront,omitempty"` 480 // CloudTrail integration 481 Cloudtrail []CloudDisableAccountIntegrationInput `json:"cloudtrail,omitempty"` 482 // DynamoDB integration 483 Dynamodb []CloudDisableAccountIntegrationInput `json:"dynamodb,omitempty"` 484 // EBS integration 485 Ebs []CloudDisableAccountIntegrationInput `json:"ebs,omitempty"` 486 // EC2 integration 487 Ec2 []CloudDisableAccountIntegrationInput `json:"ec2,omitempty"` 488 // ECS integration 489 Ecs []CloudDisableAccountIntegrationInput `json:"ecs,omitempty"` 490 // EFS integration 491 Efs []CloudDisableAccountIntegrationInput `json:"efs,omitempty"` 492 // ElastiCache integration 493 Elasticache []CloudDisableAccountIntegrationInput `json:"elasticache,omitempty"` 494 // Elastic Beanstalk integration 495 Elasticbeanstalk []CloudDisableAccountIntegrationInput `json:"elasticbeanstalk,omitempty"` 496 // Elasticsearch Service integration 497 Elasticsearch []CloudDisableAccountIntegrationInput `json:"elasticsearch,omitempty"` 498 // ELB (Classic) integration 499 Elb []CloudDisableAccountIntegrationInput `json:"elb,omitempty"` 500 // EMR integration 501 Emr []CloudDisableAccountIntegrationInput `json:"emr,omitempty"` 502 // Health integration 503 Health []CloudDisableAccountIntegrationInput `json:"health,omitempty"` 504 // IAM integration 505 Iam []CloudDisableAccountIntegrationInput `json:"iam,omitempty"` 506 // IoT integration 507 Iot []CloudDisableAccountIntegrationInput `json:"iot,omitempty"` 508 // Kinesis Streams integration 509 Kinesis []CloudDisableAccountIntegrationInput `json:"kinesis,omitempty"` 510 // Kinesis Firehose integration 511 KinesisFirehose []CloudDisableAccountIntegrationInput `json:"kinesisFirehose,omitempty"` 512 // Lambda integration 513 Lambda []CloudDisableAccountIntegrationInput `json:"lambda,omitempty"` 514 // RDS integration 515 Rds []CloudDisableAccountIntegrationInput `json:"rds,omitempty"` 516 // Redshift integration 517 Redshift []CloudDisableAccountIntegrationInput `json:"redshift,omitempty"` 518 // Route 53 integration 519 Route53 []CloudDisableAccountIntegrationInput `json:"route53,omitempty"` 520 // S3 integration 521 S3 []CloudDisableAccountIntegrationInput `json:"s3,omitempty"` 522 // SES integration 523 Ses []CloudDisableAccountIntegrationInput `json:"ses,omitempty"` 524 // SNS integration 525 Sns []CloudDisableAccountIntegrationInput `json:"sns,omitempty"` 526 // SQS integration 527 Sqs []CloudDisableAccountIntegrationInput `json:"sqs,omitempty"` 528 // Trusted Advisor integration 529 Trustedadvisor []CloudDisableAccountIntegrationInput `json:"trustedadvisor,omitempty"` 530 // VPC integration 531 Vpc []CloudDisableAccountIntegrationInput `json:"vpc,omitempty"` 532 } 533 534 // CloudAwsDocdbIntegration - DocumentDB Integration 535 type CloudAwsDocdbIntegration struct { 536 // Specify each AWS region that includes the resources that you want to monitor. 537 AwsRegions []string `json:"awsRegions,omitempty"` 538 // The object creation date, in epoch (Unix) time 539 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 540 // The cloud service integration identifier. 541 ID int `json:"id,omitempty"` 542 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 543 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 544 // The parent linked account identifier. 545 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 546 // The data polling interval in seconds. 547 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 548 // The cloud service integration name. 549 Name string `json:"name,omitempty"` 550 // The parent NewRelic account identifier. 551 NrAccountId int `json:"nrAccountId"` 552 // The cloud service used in the integration. 553 Service CloudService `json:"service,omitempty"` 554 // The object last update date, in epoch (Unix) time 555 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 556 } 557 558 func (x *CloudAwsDocdbIntegration) ImplementsCloudIntegration() {} 559 560 // CloudAwsDocdbIntegrationInput - DocumentDB 561 type CloudAwsDocdbIntegrationInput struct { 562 // Specify each AWS region that includes the resources that you want to monitor. 563 AwsRegions []string `json:"awsRegions,omitempty"` 564 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 565 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 566 // The linked account identifier. 567 LinkedAccountId int `json:"linkedAccountId"` 568 // The data polling interval in seconds. 569 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 570 } 571 572 // CloudAwsFsxIntegration - FSx Integration 573 type CloudAwsFsxIntegration struct { 574 // Specify each AWS region that includes the resources that you want to monitor. 575 AwsRegions []string `json:"awsRegions,omitempty"` 576 // The object creation date, in epoch (Unix) time 577 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 578 // The cloud service integration identifier. 579 ID int `json:"id,omitempty"` 580 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 581 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 582 // The parent linked account identifier. 583 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 584 // The data polling interval in seconds. 585 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 586 // The cloud service integration name. 587 Name string `json:"name,omitempty"` 588 // The parent NewRelic account identifier. 589 NrAccountId int `json:"nrAccountId"` 590 // The cloud service used in the integration. 591 Service CloudService `json:"service,omitempty"` 592 // The object last update date, in epoch (Unix) time 593 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 594 } 595 596 func (x *CloudAwsFsxIntegration) ImplementsCloudIntegration() {} 597 598 // CloudAwsFsxIntegrationInput - FSx 599 type CloudAwsFsxIntegrationInput struct { 600 // Specify each AWS region that includes the resources that you want to monitor. 601 AwsRegions []string `json:"awsRegions,omitempty"` 602 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 603 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 604 // The linked account identifier. 605 LinkedAccountId int `json:"linkedAccountId"` 606 // The data polling interval in seconds. 607 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 608 } 609 610 // CloudAwsGlueIntegration - Glue Integration 611 type CloudAwsGlueIntegration struct { 612 // Specify each AWS region that includes the resources that you want to monitor. 613 AwsRegions []string `json:"awsRegions,omitempty"` 614 // The object creation date, in epoch (Unix) time 615 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 616 // The cloud service integration identifier. 617 ID int `json:"id,omitempty"` 618 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 619 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 620 // The parent linked account identifier. 621 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 622 // The data polling interval in seconds. 623 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 624 // The cloud service integration name. 625 Name string `json:"name,omitempty"` 626 // The parent NewRelic account identifier. 627 NrAccountId int `json:"nrAccountId"` 628 // The cloud service used in the integration. 629 Service CloudService `json:"service,omitempty"` 630 // The object last update date, in epoch (Unix) time 631 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 632 } 633 634 func (x *CloudAwsGlueIntegration) ImplementsCloudIntegration() {} 635 636 // CloudAwsGlueIntegrationInput - Glue 637 type CloudAwsGlueIntegrationInput struct { 638 // Specify each AWS region that includes the resources that you want to monitor. 639 AwsRegions []string `json:"awsRegions,omitempty"` 640 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 641 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 642 // The linked account identifier. 643 LinkedAccountId int `json:"linkedAccountId"` 644 // The data polling interval in seconds. 645 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 646 } 647 648 // CloudAwsGovCloudProvider - The Amazon Web Services cloud provider (GovCloud) 649 type CloudAwsGovCloudProvider struct { 650 // The AWS Account ID 651 AwsAccountId string `json:"awsAccountId"` 652 // The object creation date, in epoch (Unix) time 653 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 654 // The cloud provider identifier in NewRelic. 655 ID int `json:"id"` 656 // The cloud provider icon name. 657 Icon string `json:"icon"` 658 // The cloud provider name. 659 Name string `json:"name"` 660 // Get details of one cloud provider service. 661 Service CloudService `json:"service,omitempty"` 662 // Get details of all the cloud provider services available for integration. 663 Services []CloudService `json:"services"` 664 // The cloud provider short name. 665 Slug string `json:"slug"` 666 // The object last update date, in epoch (Unix) time 667 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 668 } 669 670 func (x *CloudAwsGovCloudProvider) ImplementsCloudProvider() {} 671 672 // CloudAwsGovcloudDisableIntegrationsInput - List of integrations 673 type CloudAwsGovcloudDisableIntegrationsInput struct { 674 // API Gateway integration 675 APIgateway []CloudDisableAccountIntegrationInput `json:"apigateway,omitempty"` 676 // ALB/NLB integration 677 Alb []CloudDisableAccountIntegrationInput `json:"alb,omitempty"` 678 // AutoScaling integration 679 Autoscaling []CloudDisableAccountIntegrationInput `json:"autoscaling,omitempty"` 680 // Direct Connect integration 681 AwsDirectconnect []CloudDisableAccountIntegrationInput `json:"awsDirectconnect,omitempty"` 682 // Step Functions integration 683 AwsStates []CloudDisableAccountIntegrationInput `json:"awsStates,omitempty"` 684 // CloudTrail integration 685 Cloudtrail []CloudDisableAccountIntegrationInput `json:"cloudtrail,omitempty"` 686 // DynamoDB integration 687 Dynamodb []CloudDisableAccountIntegrationInput `json:"dynamodb,omitempty"` 688 // EBS integration 689 Ebs []CloudDisableAccountIntegrationInput `json:"ebs,omitempty"` 690 // EC2 integration 691 Ec2 []CloudDisableAccountIntegrationInput `json:"ec2,omitempty"` 692 // Elasticsearch Service integration 693 Elasticsearch []CloudDisableAccountIntegrationInput `json:"elasticsearch,omitempty"` 694 // ELB (Classic) integration 695 Elb []CloudDisableAccountIntegrationInput `json:"elb,omitempty"` 696 // EMR integration 697 Emr []CloudDisableAccountIntegrationInput `json:"emr,omitempty"` 698 // IAM integration 699 Iam []CloudDisableAccountIntegrationInput `json:"iam,omitempty"` 700 // Lambda integration 701 Lambda []CloudDisableAccountIntegrationInput `json:"lambda,omitempty"` 702 // RDS integration 703 Rds []CloudDisableAccountIntegrationInput `json:"rds,omitempty"` 704 // Redshift integration 705 Redshift []CloudDisableAccountIntegrationInput `json:"redshift,omitempty"` 706 // Route 53 integration 707 Route53 []CloudDisableAccountIntegrationInput `json:"route53,omitempty"` 708 // S3 integration 709 S3 []CloudDisableAccountIntegrationInput `json:"s3,omitempty"` 710 // SNS integration 711 Sns []CloudDisableAccountIntegrationInput `json:"sns,omitempty"` 712 // SQS integration 713 Sqs []CloudDisableAccountIntegrationInput `json:"sqs,omitempty"` 714 } 715 716 // CloudAwsGovcloudIntegrationsInput - List of integrations 717 type CloudAwsGovcloudIntegrationsInput struct { 718 // API Gateway integration 719 APIgateway []CloudAPIgatewayIntegrationInput `json:"apigateway,omitempty"` 720 // ALB/NLB integration 721 Alb []CloudAlbIntegrationInput `json:"alb,omitempty"` 722 // AutoScaling integration 723 Autoscaling []CloudAutoscalingIntegrationInput `json:"autoscaling,omitempty"` 724 // Direct Connect integration 725 AwsDirectconnect []CloudAwsDirectconnectIntegrationInput `json:"awsDirectconnect,omitempty"` 726 // Step Functions integration 727 AwsStates []CloudAwsStatesIntegrationInput `json:"awsStates,omitempty"` 728 // CloudTrail integration 729 Cloudtrail []CloudCloudtrailIntegrationInput `json:"cloudtrail,omitempty"` 730 // DynamoDB integration 731 Dynamodb []CloudDynamodbIntegrationInput `json:"dynamodb,omitempty"` 732 // EBS integration 733 Ebs []CloudEbsIntegrationInput `json:"ebs,omitempty"` 734 // EC2 integration 735 Ec2 []CloudEc2IntegrationInput `json:"ec2,omitempty"` 736 // Elasticsearch Service integration 737 Elasticsearch []CloudElasticsearchIntegrationInput `json:"elasticsearch,omitempty"` 738 // ELB (Classic) integration 739 Elb []CloudElbIntegrationInput `json:"elb,omitempty"` 740 // EMR integration 741 Emr []CloudEmrIntegrationInput `json:"emr,omitempty"` 742 // IAM integration 743 Iam []CloudIamIntegrationInput `json:"iam,omitempty"` 744 // Lambda integration 745 Lambda []CloudLambdaIntegrationInput `json:"lambda,omitempty"` 746 // RDS integration 747 Rds []CloudRdsIntegrationInput `json:"rds,omitempty"` 748 // Redshift integration 749 Redshift []CloudRedshiftIntegrationInput `json:"redshift,omitempty"` 750 // Route 53 integration 751 Route53 []CloudRoute53IntegrationInput `json:"route53,omitempty"` 752 // S3 integration 753 S3 []CloudS3IntegrationInput `json:"s3,omitempty"` 754 // SNS integration 755 Sns []CloudSnsIntegrationInput `json:"sns,omitempty"` 756 // SQS integration 757 Sqs []CloudSqsIntegrationInput `json:"sqs,omitempty"` 758 } 759 760 // CloudAwsGovcloudLinkAccountInput - Information required to link an AWS GovCloud account to a NewRelic account. 761 type CloudAwsGovcloudLinkAccountInput struct { 762 // The key used to make requests to AWS service APIs 763 AccessKeyId string `json:"accessKeyId"` 764 // The AWS account id 765 AwsAccountId string `json:"awsAccountId"` 766 // How metrics will be collected. 767 MetricCollectionMode CloudMetricCollectionMode `json:"metricCollectionMode,omitempty"` 768 // The linked account name. 769 Name string `json:"name"` 770 // The secret key used to make requests to AWS service APIs 771 SecretAccessKey SecureValue `json:"secretAccessKey"` 772 } 773 774 // CloudAwsIntegrationsInput - List of integrations 775 type CloudAwsIntegrationsInput struct { 776 // API Gateway integration 777 APIgateway []CloudAPIgatewayIntegrationInput `json:"apigateway,omitempty"` 778 // ALB/NLB integration 779 Alb []CloudAlbIntegrationInput `json:"alb,omitempty"` 780 // AutoScaling integration 781 Autoscaling []CloudAutoscalingIntegrationInput `json:"autoscaling,omitempty"` 782 // AppSync integration 783 AwsAppsync []CloudAwsAppsyncIntegrationInput `json:"awsAppsync,omitempty"` 784 // Athena integration 785 AwsAthena []CloudAwsAthenaIntegrationInput `json:"awsAthena,omitempty"` 786 // Cognito integration 787 AwsCognito []CloudAwsCognitoIntegrationInput `json:"awsCognito,omitempty"` 788 // Connect integration 789 AwsConnect []CloudAwsConnectIntegrationInput `json:"awsConnect,omitempty"` 790 // Direct Connect integration 791 AwsDirectconnect []CloudAwsDirectconnectIntegrationInput `json:"awsDirectconnect,omitempty"` 792 // DocumentDB integration 793 AwsDocdb []CloudAwsDocdbIntegrationInput `json:"awsDocdb,omitempty"` 794 // FSx integration 795 AwsFsx []CloudAwsFsxIntegrationInput `json:"awsFsx,omitempty"` 796 // Glue integration 797 AwsGlue []CloudAwsGlueIntegrationInput `json:"awsGlue,omitempty"` 798 // Kinesis Data Analytics integration 799 AwsKinesisanalytics []CloudAwsKinesisanalyticsIntegrationInput `json:"awsKinesisanalytics,omitempty"` 800 // Elemental MediaConvert integration 801 AwsMediaconvert []CloudAwsMediaconvertIntegrationInput `json:"awsMediaconvert,omitempty"` 802 // MediaPackage VOD integration 803 AwsMediapackagevod []CloudAwsMediapackagevodIntegrationInput `json:"awsMediapackagevod,omitempty"` 804 // Fetch Metadata for AWS integrations integration 805 AwsMetadata []CloudAwsMetadataIntegrationInput `json:"awsMetadata,omitempty"` 806 // MQ integration 807 AwsMq []CloudAwsMqIntegrationInput `json:"awsMq,omitempty"` 808 // Managed Kafka integration 809 AwsMsk []CloudAwsMskIntegrationInput `json:"awsMsk,omitempty"` 810 // Neptune integration 811 AwsNeptune []CloudAwsNeptuneIntegrationInput `json:"awsNeptune,omitempty"` 812 // QLDB integration 813 AwsQldb []CloudAwsQldbIntegrationInput `json:"awsQldb,omitempty"` 814 // Route53 Resolver integration 815 AwsRoute53resolver []CloudAwsRoute53resolverIntegrationInput `json:"awsRoute53resolver,omitempty"` 816 // Step Functions integration 817 AwsStates []CloudAwsStatesIntegrationInput `json:"awsStates,omitempty"` 818 // Fetch tags for all integrations integration 819 AwsTagsGlobal []CloudAwsTagsGlobalIntegrationInput `json:"awsTagsGlobal,omitempty"` 820 // Transit Gateway integration 821 AwsTransitgateway []CloudAwsTransitgatewayIntegrationInput `json:"awsTransitgateway,omitempty"` 822 // WAF integration 823 AwsWaf []CloudAwsWafIntegrationInput `json:"awsWaf,omitempty"` 824 // WAFV2 integration 825 AwsWafv2 []CloudAwsWafv2IntegrationInput `json:"awsWafv2,omitempty"` 826 // X-Ray integration 827 AwsXray []CloudAwsXrayIntegrationInput `json:"awsXray,omitempty"` 828 // Billing integration 829 Billing []CloudBillingIntegrationInput `json:"billing,omitempty"` 830 // CloudFront integration 831 Cloudfront []CloudCloudfrontIntegrationInput `json:"cloudfront,omitempty"` 832 // CloudTrail integration 833 Cloudtrail []CloudCloudtrailIntegrationInput `json:"cloudtrail,omitempty"` 834 // DynamoDB integration 835 Dynamodb []CloudDynamodbIntegrationInput `json:"dynamodb,omitempty"` 836 // EBS integration 837 Ebs []CloudEbsIntegrationInput `json:"ebs,omitempty"` 838 // EC2 integration 839 Ec2 []CloudEc2IntegrationInput `json:"ec2,omitempty"` 840 // ECS integration 841 Ecs []CloudEcsIntegrationInput `json:"ecs,omitempty"` 842 // EFS integration 843 Efs []CloudEfsIntegrationInput `json:"efs,omitempty"` 844 // ElastiCache integration 845 Elasticache []CloudElasticacheIntegrationInput `json:"elasticache,omitempty"` 846 // Elastic Beanstalk integration 847 Elasticbeanstalk []CloudElasticbeanstalkIntegrationInput `json:"elasticbeanstalk,omitempty"` 848 // Elasticsearch Service integration 849 Elasticsearch []CloudElasticsearchIntegrationInput `json:"elasticsearch,omitempty"` 850 // ELB (Classic) integration 851 Elb []CloudElbIntegrationInput `json:"elb,omitempty"` 852 // EMR integration 853 Emr []CloudEmrIntegrationInput `json:"emr,omitempty"` 854 // Health integration 855 Health []CloudHealthIntegrationInput `json:"health,omitempty"` 856 // IAM integration 857 Iam []CloudIamIntegrationInput `json:"iam,omitempty"` 858 // IoT integration 859 Iot []CloudIotIntegrationInput `json:"iot,omitempty"` 860 // Kinesis Streams integration 861 Kinesis []CloudKinesisIntegrationInput `json:"kinesis,omitempty"` 862 // Kinesis Firehose integration 863 KinesisFirehose []CloudKinesisFirehoseIntegrationInput `json:"kinesisFirehose,omitempty"` 864 // Lambda integration 865 Lambda []CloudLambdaIntegrationInput `json:"lambda,omitempty"` 866 // RDS integration 867 Rds []CloudRdsIntegrationInput `json:"rds,omitempty"` 868 // Redshift integration 869 Redshift []CloudRedshiftIntegrationInput `json:"redshift,omitempty"` 870 // Route 53 integration 871 Route53 []CloudRoute53IntegrationInput `json:"route53,omitempty"` 872 // S3 integration 873 S3 []CloudS3IntegrationInput `json:"s3,omitempty"` 874 // SES integration 875 Ses []CloudSesIntegrationInput `json:"ses,omitempty"` 876 // SNS integration 877 Sns []CloudSnsIntegrationInput `json:"sns,omitempty"` 878 // SQS integration 879 Sqs []CloudSqsIntegrationInput `json:"sqs,omitempty"` 880 // Trusted Advisor integration 881 Trustedadvisor []CloudTrustedadvisorIntegrationInput `json:"trustedadvisor,omitempty"` 882 // VPC integration 883 Vpc []CloudVpcIntegrationInput `json:"vpc,omitempty"` 884 } 885 886 // CloudAwsKinesisanalyticsIntegration - Kinesis Data Analytics Integration 887 type CloudAwsKinesisanalyticsIntegration struct { 888 // Specify each AWS region that includes the resources that you want to monitor. 889 AwsRegions []string `json:"awsRegions,omitempty"` 890 // The object creation date, in epoch (Unix) time 891 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 892 // The cloud service integration identifier. 893 ID int `json:"id,omitempty"` 894 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 895 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 896 // The parent linked account identifier. 897 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 898 // The data polling interval in seconds. 899 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 900 // The cloud service integration name. 901 Name string `json:"name,omitempty"` 902 // The parent NewRelic account identifier. 903 NrAccountId int `json:"nrAccountId"` 904 // The cloud service used in the integration. 905 Service CloudService `json:"service,omitempty"` 906 // The object last update date, in epoch (Unix) time 907 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 908 } 909 910 func (x *CloudAwsKinesisanalyticsIntegration) ImplementsCloudIntegration() {} 911 912 // CloudAwsKinesisanalyticsIntegrationInput - Kinesis Data Analytics 913 type CloudAwsKinesisanalyticsIntegrationInput struct { 914 // Specify each AWS region that includes the resources that you want to monitor. 915 AwsRegions []string `json:"awsRegions,omitempty"` 916 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 917 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 918 // The linked account identifier. 919 LinkedAccountId int `json:"linkedAccountId"` 920 // The data polling interval in seconds. 921 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 922 } 923 924 // CloudAwsLinkAccountInput - Information required to link a AWS account to a NewRelic account. 925 type CloudAwsLinkAccountInput struct { 926 // The AWS role ARN (used to fetch data). 927 Arn string `json:"arn"` 928 // How metrics will be collected. 929 MetricCollectionMode CloudMetricCollectionMode `json:"metricCollectionMode,omitempty"` 930 // The linked account name. 931 Name string `json:"name"` 932 } 933 934 // CloudAwsMediaconvertIntegration - Elemental MediaConvert Integration 935 type CloudAwsMediaconvertIntegration struct { 936 // Specify each AWS region that includes the resources that you want to monitor. 937 AwsRegions []string `json:"awsRegions,omitempty"` 938 // The object creation date, in epoch (Unix) time 939 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 940 // The cloud service integration identifier. 941 ID int `json:"id,omitempty"` 942 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 943 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 944 // The parent linked account identifier. 945 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 946 // The data polling interval in seconds. 947 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 948 // The cloud service integration name. 949 Name string `json:"name,omitempty"` 950 // The parent NewRelic account identifier. 951 NrAccountId int `json:"nrAccountId"` 952 // The cloud service used in the integration. 953 Service CloudService `json:"service,omitempty"` 954 // The object last update date, in epoch (Unix) time 955 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 956 } 957 958 func (x *CloudAwsMediaconvertIntegration) ImplementsCloudIntegration() {} 959 960 // CloudAwsMediaconvertIntegrationInput - Elemental MediaConvert 961 type CloudAwsMediaconvertIntegrationInput struct { 962 // Specify each AWS region that includes the resources that you want to monitor. 963 AwsRegions []string `json:"awsRegions,omitempty"` 964 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 965 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 966 // The linked account identifier. 967 LinkedAccountId int `json:"linkedAccountId"` 968 // The data polling interval in seconds. 969 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 970 } 971 972 // CloudAwsMediapackagevodIntegration - MediaPackage VOD Integration 973 type CloudAwsMediapackagevodIntegration struct { 974 // Specify each AWS region that includes the resources that you want to monitor. 975 AwsRegions []string `json:"awsRegions,omitempty"` 976 // The object creation date, in epoch (Unix) time 977 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 978 // The cloud service integration identifier. 979 ID int `json:"id,omitempty"` 980 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 981 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 982 // The parent linked account identifier. 983 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 984 // The data polling interval in seconds. 985 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 986 // The cloud service integration name. 987 Name string `json:"name,omitempty"` 988 // The parent NewRelic account identifier. 989 NrAccountId int `json:"nrAccountId"` 990 // The cloud service used in the integration. 991 Service CloudService `json:"service,omitempty"` 992 // The object last update date, in epoch (Unix) time 993 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 994 } 995 996 func (x *CloudAwsMediapackagevodIntegration) ImplementsCloudIntegration() {} 997 998 // CloudAwsMediapackagevodIntegrationInput - MediaPackage VOD 999 type CloudAwsMediapackagevodIntegrationInput struct { 1000 // Specify each AWS region that includes the resources that you want to monitor. 1001 AwsRegions []string `json:"awsRegions,omitempty"` 1002 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1003 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1004 // The linked account identifier. 1005 LinkedAccountId int `json:"linkedAccountId"` 1006 // The data polling interval in seconds. 1007 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1008 } 1009 1010 // CloudAwsMetadataIntegration - Fetch Metadata for AWS integrations Integration 1011 type CloudAwsMetadataIntegration struct { 1012 // The object creation date, in epoch (Unix) time 1013 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1014 // The cloud service integration identifier. 1015 ID int `json:"id,omitempty"` 1016 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1017 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1018 // The parent linked account identifier. 1019 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1020 // The data polling interval in seconds. 1021 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1022 // The cloud service integration name. 1023 Name string `json:"name,omitempty"` 1024 // The parent NewRelic account identifier. 1025 NrAccountId int `json:"nrAccountId"` 1026 // The cloud service used in the integration. 1027 Service CloudService `json:"service,omitempty"` 1028 // The object last update date, in epoch (Unix) time 1029 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1030 } 1031 1032 func (x *CloudAwsMetadataIntegration) ImplementsCloudIntegration() {} 1033 1034 // CloudAwsMetadataIntegrationInput - Fetch Metadata for AWS integrations 1035 type CloudAwsMetadataIntegrationInput struct { 1036 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1037 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1038 // The linked account identifier. 1039 LinkedAccountId int `json:"linkedAccountId"` 1040 // The data polling interval in seconds. 1041 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1042 } 1043 1044 // CloudAwsMqIntegration - MQ Integration 1045 type CloudAwsMqIntegration struct { 1046 // Specify each AWS region that includes the resources that you want to monitor. 1047 AwsRegions []string `json:"awsRegions,omitempty"` 1048 // The object creation date, in epoch (Unix) time 1049 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1050 // The cloud service integration identifier. 1051 ID int `json:"id,omitempty"` 1052 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1053 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1054 // The parent linked account identifier. 1055 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1056 // The data polling interval in seconds. 1057 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1058 // The cloud service integration name. 1059 Name string `json:"name,omitempty"` 1060 // The parent NewRelic account identifier. 1061 NrAccountId int `json:"nrAccountId"` 1062 // The cloud service used in the integration. 1063 Service CloudService `json:"service,omitempty"` 1064 // The object last update date, in epoch (Unix) time 1065 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1066 } 1067 1068 func (x *CloudAwsMqIntegration) ImplementsCloudIntegration() {} 1069 1070 // CloudAwsMqIntegrationInput - MQ 1071 type CloudAwsMqIntegrationInput struct { 1072 // Specify each AWS region that includes the resources that you want to monitor. 1073 AwsRegions []string `json:"awsRegions,omitempty"` 1074 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1075 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1076 // The linked account identifier. 1077 LinkedAccountId int `json:"linkedAccountId"` 1078 // The data polling interval in seconds. 1079 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1080 } 1081 1082 // CloudAwsMskIntegration - Managed Kafka Integration 1083 type CloudAwsMskIntegration struct { 1084 // Specify each AWS region that includes the resources that you want to monitor. 1085 AwsRegions []string `json:"awsRegions,omitempty"` 1086 // The object creation date, in epoch (Unix) time 1087 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1088 // The cloud service integration identifier. 1089 ID int `json:"id,omitempty"` 1090 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1091 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1092 // The parent linked account identifier. 1093 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1094 // The data polling interval in seconds. 1095 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1096 // The cloud service integration name. 1097 Name string `json:"name,omitempty"` 1098 // The parent NewRelic account identifier. 1099 NrAccountId int `json:"nrAccountId"` 1100 // The cloud service used in the integration. 1101 Service CloudService `json:"service,omitempty"` 1102 // The object last update date, in epoch (Unix) time 1103 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1104 } 1105 1106 func (x *CloudAwsMskIntegration) ImplementsCloudIntegration() {} 1107 1108 // CloudAwsMskIntegrationInput - Managed Kafka 1109 type CloudAwsMskIntegrationInput struct { 1110 // Specify each AWS region that includes the resources that you want to monitor. 1111 AwsRegions []string `json:"awsRegions,omitempty"` 1112 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1113 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1114 // The linked account identifier. 1115 LinkedAccountId int `json:"linkedAccountId"` 1116 // The data polling interval in seconds. 1117 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1118 } 1119 1120 // CloudAwsNeptuneIntegration - Neptune Integration 1121 type CloudAwsNeptuneIntegration struct { 1122 // Specify each AWS region that includes the resources that you want to monitor. 1123 AwsRegions []string `json:"awsRegions,omitempty"` 1124 // The object creation date, in epoch (Unix) time 1125 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1126 // The cloud service integration identifier. 1127 ID int `json:"id,omitempty"` 1128 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1129 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1130 // The parent linked account identifier. 1131 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1132 // The data polling interval in seconds. 1133 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1134 // The cloud service integration name. 1135 Name string `json:"name,omitempty"` 1136 // The parent NewRelic account identifier. 1137 NrAccountId int `json:"nrAccountId"` 1138 // The cloud service used in the integration. 1139 Service CloudService `json:"service,omitempty"` 1140 // The object last update date, in epoch (Unix) time 1141 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1142 } 1143 1144 func (x *CloudAwsNeptuneIntegration) ImplementsCloudIntegration() {} 1145 1146 // CloudAwsNeptuneIntegrationInput - Neptune 1147 type CloudAwsNeptuneIntegrationInput struct { 1148 // Specify each AWS region that includes the resources that you want to monitor. 1149 AwsRegions []string `json:"awsRegions,omitempty"` 1150 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1151 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1152 // The linked account identifier. 1153 LinkedAccountId int `json:"linkedAccountId"` 1154 // The data polling interval in seconds. 1155 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1156 } 1157 1158 // CloudAwsProvider - The Amazon Web Services cloud provider 1159 type CloudAwsProvider struct { 1160 // The object creation date, in epoch (Unix) time 1161 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1162 // The cloud provider identifier in NewRelic. 1163 ID int `json:"id"` 1164 // The cloud provider icon name. 1165 Icon string `json:"icon"` 1166 // The cloud provider name. 1167 Name string `json:"name"` 1168 // The New Relic AWS Account ID that will use the Role. 1169 RoleAccountId string `json:"roleAccountId"` 1170 // The external ID required to assume the Role by the New Relic Account. 1171 RoleExternalId string `json:"roleExternalId"` 1172 // Get details of one cloud provider service. 1173 Service CloudService `json:"service,omitempty"` 1174 // Get details of all the cloud provider services available for integration. 1175 Services []CloudService `json:"services"` 1176 // The cloud provider short name. 1177 Slug string `json:"slug"` 1178 // The object last update date, in epoch (Unix) time 1179 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1180 } 1181 1182 func (x *CloudAwsProvider) ImplementsCloudProvider() {} 1183 1184 // CloudAwsQldbIntegration - QLDB Integration 1185 type CloudAwsQldbIntegration struct { 1186 // Specify each AWS region that includes the resources that you want to monitor. 1187 AwsRegions []string `json:"awsRegions,omitempty"` 1188 // The object creation date, in epoch (Unix) time 1189 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1190 // The cloud service integration identifier. 1191 ID int `json:"id,omitempty"` 1192 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1193 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1194 // The parent linked account identifier. 1195 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1196 // The data polling interval in seconds. 1197 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1198 // The cloud service integration name. 1199 Name string `json:"name,omitempty"` 1200 // The parent NewRelic account identifier. 1201 NrAccountId int `json:"nrAccountId"` 1202 // The cloud service used in the integration. 1203 Service CloudService `json:"service,omitempty"` 1204 // The object last update date, in epoch (Unix) time 1205 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1206 } 1207 1208 func (x *CloudAwsQldbIntegration) ImplementsCloudIntegration() {} 1209 1210 // CloudAwsQldbIntegrationInput - QLDB 1211 type CloudAwsQldbIntegrationInput struct { 1212 // Specify each AWS region that includes the resources that you want to monitor. 1213 AwsRegions []string `json:"awsRegions,omitempty"` 1214 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1215 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1216 // The linked account identifier. 1217 LinkedAccountId int `json:"linkedAccountId"` 1218 // The data polling interval in seconds. 1219 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1220 } 1221 1222 // CloudAwsRoute53resolverIntegration - Route53 Resolver Integration 1223 type CloudAwsRoute53resolverIntegration struct { 1224 // Specify each AWS region that includes the resources that you want to monitor. 1225 AwsRegions []string `json:"awsRegions,omitempty"` 1226 // The object creation date, in epoch (Unix) time 1227 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1228 // The cloud service integration identifier. 1229 ID int `json:"id,omitempty"` 1230 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1231 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1232 // The parent linked account identifier. 1233 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1234 // The data polling interval in seconds. 1235 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1236 // The cloud service integration name. 1237 Name string `json:"name,omitempty"` 1238 // The parent NewRelic account identifier. 1239 NrAccountId int `json:"nrAccountId"` 1240 // The cloud service used in the integration. 1241 Service CloudService `json:"service,omitempty"` 1242 // The object last update date, in epoch (Unix) time 1243 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1244 } 1245 1246 func (x *CloudAwsRoute53resolverIntegration) ImplementsCloudIntegration() {} 1247 1248 // CloudAwsRoute53resolverIntegrationInput - Route53 Resolver 1249 type CloudAwsRoute53resolverIntegrationInput struct { 1250 // Specify each AWS region that includes the resources that you want to monitor. 1251 AwsRegions []string `json:"awsRegions,omitempty"` 1252 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1253 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1254 // The linked account identifier. 1255 LinkedAccountId int `json:"linkedAccountId"` 1256 // The data polling interval in seconds. 1257 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1258 } 1259 1260 // CloudAwsStatesIntegration - Step Functions Integration 1261 type CloudAwsStatesIntegration struct { 1262 // Specify each AWS region that includes the resources that you want to monitor. 1263 AwsRegions []string `json:"awsRegions,omitempty"` 1264 // The object creation date, in epoch (Unix) time 1265 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1266 // The cloud service integration identifier. 1267 ID int `json:"id,omitempty"` 1268 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1269 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1270 // The parent linked account identifier. 1271 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1272 // The data polling interval in seconds. 1273 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1274 // The cloud service integration name. 1275 Name string `json:"name,omitempty"` 1276 // The parent NewRelic account identifier. 1277 NrAccountId int `json:"nrAccountId"` 1278 // The cloud service used in the integration. 1279 Service CloudService `json:"service,omitempty"` 1280 // The object last update date, in epoch (Unix) time 1281 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1282 } 1283 1284 func (x *CloudAwsStatesIntegration) ImplementsCloudIntegration() {} 1285 1286 // CloudAwsStatesIntegrationInput - Step Functions 1287 type CloudAwsStatesIntegrationInput struct { 1288 // Specify each AWS region that includes the resources that you want to monitor. 1289 AwsRegions []string `json:"awsRegions,omitempty"` 1290 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1291 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1292 // The linked account identifier. 1293 LinkedAccountId int `json:"linkedAccountId"` 1294 // The data polling interval in seconds. 1295 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1296 } 1297 1298 // CloudAwsTagsGlobalIntegration - Fetch tags for all integrations Integration 1299 type CloudAwsTagsGlobalIntegration struct { 1300 // The object creation date, in epoch (Unix) time 1301 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1302 // The cloud service integration identifier. 1303 ID int `json:"id,omitempty"` 1304 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1305 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1306 // The parent linked account identifier. 1307 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1308 // The data polling interval in seconds. 1309 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1310 // The cloud service integration name. 1311 Name string `json:"name,omitempty"` 1312 // The parent NewRelic account identifier. 1313 NrAccountId int `json:"nrAccountId"` 1314 // The cloud service used in the integration. 1315 Service CloudService `json:"service,omitempty"` 1316 // The object last update date, in epoch (Unix) time 1317 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1318 } 1319 1320 func (x *CloudAwsTagsGlobalIntegration) ImplementsCloudIntegration() {} 1321 1322 // CloudAwsTagsGlobalIntegrationInput - Fetch tags for all integrations 1323 type CloudAwsTagsGlobalIntegrationInput struct { 1324 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1325 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1326 // The linked account identifier. 1327 LinkedAccountId int `json:"linkedAccountId"` 1328 // The data polling interval in seconds. 1329 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1330 } 1331 1332 // CloudAwsTransitgatewayIntegration - Transit Gateway Integration 1333 type CloudAwsTransitgatewayIntegration struct { 1334 // Specify each AWS region that includes the resources that you want to monitor. 1335 AwsRegions []string `json:"awsRegions,omitempty"` 1336 // The object creation date, in epoch (Unix) time 1337 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1338 // The cloud service integration identifier. 1339 ID int `json:"id,omitempty"` 1340 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1341 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1342 // The parent linked account identifier. 1343 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1344 // The data polling interval in seconds. 1345 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1346 // The cloud service integration name. 1347 Name string `json:"name,omitempty"` 1348 // The parent NewRelic account identifier. 1349 NrAccountId int `json:"nrAccountId"` 1350 // The cloud service used in the integration. 1351 Service CloudService `json:"service,omitempty"` 1352 // The object last update date, in epoch (Unix) time 1353 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1354 } 1355 1356 func (x *CloudAwsTransitgatewayIntegration) ImplementsCloudIntegration() {} 1357 1358 // CloudAwsTransitgatewayIntegrationInput - Transit Gateway 1359 type CloudAwsTransitgatewayIntegrationInput struct { 1360 // Specify each AWS region that includes the resources that you want to monitor. 1361 AwsRegions []string `json:"awsRegions,omitempty"` 1362 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1363 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1364 // The linked account identifier. 1365 LinkedAccountId int `json:"linkedAccountId"` 1366 // The data polling interval in seconds. 1367 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1368 } 1369 1370 // CloudAwsWafIntegration - WAF Integration 1371 type CloudAwsWafIntegration struct { 1372 // Specify each AWS region that includes the resources that you want to monitor. 1373 AwsRegions []string `json:"awsRegions,omitempty"` 1374 // The object creation date, in epoch (Unix) time 1375 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1376 // The cloud service integration identifier. 1377 ID int `json:"id,omitempty"` 1378 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1379 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1380 // The parent linked account identifier. 1381 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1382 // The data polling interval in seconds. 1383 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1384 // The cloud service integration name. 1385 Name string `json:"name,omitempty"` 1386 // The parent NewRelic account identifier. 1387 NrAccountId int `json:"nrAccountId"` 1388 // The cloud service used in the integration. 1389 Service CloudService `json:"service,omitempty"` 1390 // The object last update date, in epoch (Unix) time 1391 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1392 } 1393 1394 func (x *CloudAwsWafIntegration) ImplementsCloudIntegration() {} 1395 1396 // CloudAwsWafIntegrationInput - WAF 1397 type CloudAwsWafIntegrationInput struct { 1398 // Specify each AWS region that includes the resources that you want to monitor. 1399 AwsRegions []string `json:"awsRegions,omitempty"` 1400 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1401 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1402 // The linked account identifier. 1403 LinkedAccountId int `json:"linkedAccountId"` 1404 // The data polling interval in seconds. 1405 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1406 } 1407 1408 // CloudAwsWafv2Integration - WAFV2 Integration 1409 type CloudAwsWafv2Integration struct { 1410 // Specify each AWS region that includes the resources that you want to monitor. 1411 AwsRegions []string `json:"awsRegions,omitempty"` 1412 // The object creation date, in epoch (Unix) time 1413 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1414 // The cloud service integration identifier. 1415 ID int `json:"id,omitempty"` 1416 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1417 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1418 // The parent linked account identifier. 1419 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1420 // The data polling interval in seconds. 1421 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1422 // The cloud service integration name. 1423 Name string `json:"name,omitempty"` 1424 // The parent NewRelic account identifier. 1425 NrAccountId int `json:"nrAccountId"` 1426 // The cloud service used in the integration. 1427 Service CloudService `json:"service,omitempty"` 1428 // The object last update date, in epoch (Unix) time 1429 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1430 } 1431 1432 func (x *CloudAwsWafv2Integration) ImplementsCloudIntegration() {} 1433 1434 // CloudAwsWafv2IntegrationInput - WAFV2 1435 type CloudAwsWafv2IntegrationInput struct { 1436 // Specify each AWS region that includes the resources that you want to monitor. 1437 AwsRegions []string `json:"awsRegions,omitempty"` 1438 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1439 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1440 // The linked account identifier. 1441 LinkedAccountId int `json:"linkedAccountId"` 1442 // The data polling interval in seconds. 1443 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1444 } 1445 1446 // CloudAwsXrayIntegration - X-Ray Integration 1447 type CloudAwsXrayIntegration struct { 1448 // Specify each AWS region that includes the resources that you want to monitor. 1449 AwsRegions []string `json:"awsRegions,omitempty"` 1450 // The object creation date, in epoch (Unix) time 1451 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1452 // The cloud service integration identifier. 1453 ID int `json:"id,omitempty"` 1454 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1455 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1456 // The parent linked account identifier. 1457 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1458 // The data polling interval in seconds. 1459 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1460 // The cloud service integration name. 1461 Name string `json:"name,omitempty"` 1462 // The parent NewRelic account identifier. 1463 NrAccountId int `json:"nrAccountId"` 1464 // The cloud service used in the integration. 1465 Service CloudService `json:"service,omitempty"` 1466 // The object last update date, in epoch (Unix) time 1467 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1468 } 1469 1470 func (x *CloudAwsXrayIntegration) ImplementsCloudIntegration() {} 1471 1472 // CloudAwsXrayIntegrationInput - X-Ray 1473 type CloudAwsXrayIntegrationInput struct { 1474 // Specify each AWS region that includes the resources that you want to monitor. 1475 AwsRegions []string `json:"awsRegions,omitempty"` 1476 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1477 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1478 // The linked account identifier. 1479 LinkedAccountId int `json:"linkedAccountId"` 1480 // The data polling interval in seconds. 1481 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1482 } 1483 1484 // CloudAzureAPImanagementIntegration - Api Management Integration 1485 type CloudAzureAPImanagementIntegration struct { 1486 // The object creation date, in epoch (Unix) time 1487 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1488 // The cloud service integration identifier. 1489 ID int `json:"id,omitempty"` 1490 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1491 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1492 // The parent linked account identifier. 1493 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1494 // The data polling interval in seconds. 1495 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1496 // The cloud service integration name. 1497 Name string `json:"name,omitempty"` 1498 // The parent NewRelic account identifier. 1499 NrAccountId int `json:"nrAccountId"` 1500 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1501 ResourceGroups []string `json:"resourceGroups,omitempty"` 1502 // The cloud service used in the integration. 1503 Service CloudService `json:"service,omitempty"` 1504 // The object last update date, in epoch (Unix) time 1505 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1506 } 1507 1508 func (x *CloudAzureAPImanagementIntegration) ImplementsCloudIntegration() {} 1509 1510 // CloudAzureAPImanagementIntegrationInput - Api Management 1511 type CloudAzureAPImanagementIntegrationInput struct { 1512 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1513 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1514 // The linked account identifier. 1515 LinkedAccountId int `json:"linkedAccountId"` 1516 // The data polling interval in seconds. 1517 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1518 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1519 ResourceGroups []string `json:"resourceGroups,omitempty"` 1520 } 1521 1522 // CloudAzureAppgatewayIntegration - App Gateway Integration 1523 type CloudAzureAppgatewayIntegration struct { 1524 // The object creation date, in epoch (Unix) time 1525 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1526 // The cloud service integration identifier. 1527 ID int `json:"id,omitempty"` 1528 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1529 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1530 // The parent linked account identifier. 1531 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1532 // The data polling interval in seconds. 1533 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1534 // The cloud service integration name. 1535 Name string `json:"name,omitempty"` 1536 // The parent NewRelic account identifier. 1537 NrAccountId int `json:"nrAccountId"` 1538 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1539 ResourceGroups []string `json:"resourceGroups,omitempty"` 1540 // The cloud service used in the integration. 1541 Service CloudService `json:"service,omitempty"` 1542 // The object last update date, in epoch (Unix) time 1543 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1544 } 1545 1546 func (x *CloudAzureAppgatewayIntegration) ImplementsCloudIntegration() {} 1547 1548 // CloudAzureAppgatewayIntegrationInput - App Gateway 1549 type CloudAzureAppgatewayIntegrationInput struct { 1550 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1551 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1552 // The linked account identifier. 1553 LinkedAccountId int `json:"linkedAccountId"` 1554 // The data polling interval in seconds. 1555 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1556 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1557 ResourceGroups []string `json:"resourceGroups,omitempty"` 1558 } 1559 1560 // CloudAzureAppserviceIntegration - App Service Integration 1561 type CloudAzureAppserviceIntegration struct { 1562 // The object creation date, in epoch (Unix) time 1563 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1564 // The cloud service integration identifier. 1565 ID int `json:"id,omitempty"` 1566 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1567 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1568 // The parent linked account identifier. 1569 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1570 // The data polling interval in seconds. 1571 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1572 // The cloud service integration name. 1573 Name string `json:"name,omitempty"` 1574 // The parent NewRelic account identifier. 1575 NrAccountId int `json:"nrAccountId"` 1576 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1577 ResourceGroups []string `json:"resourceGroups,omitempty"` 1578 // The cloud service used in the integration. 1579 Service CloudService `json:"service,omitempty"` 1580 // The object last update date, in epoch (Unix) time 1581 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1582 } 1583 1584 func (x *CloudAzureAppserviceIntegration) ImplementsCloudIntegration() {} 1585 1586 // CloudAzureAppserviceIntegrationInput - Azure App Service 1587 type CloudAzureAppserviceIntegrationInput struct { 1588 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1589 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1590 // The linked account identifier. 1591 LinkedAccountId int `json:"linkedAccountId"` 1592 // The data polling interval in seconds. 1593 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1594 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1595 ResourceGroups []string `json:"resourceGroups,omitempty"` 1596 } 1597 1598 // CloudAzureContainersIntegration - Containers Integration 1599 type CloudAzureContainersIntegration struct { 1600 // The object creation date, in epoch (Unix) time 1601 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1602 // The cloud service integration identifier. 1603 ID int `json:"id,omitempty"` 1604 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1605 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1606 // The parent linked account identifier. 1607 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1608 // The data polling interval in seconds. 1609 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1610 // The cloud service integration name. 1611 Name string `json:"name,omitempty"` 1612 // The parent NewRelic account identifier. 1613 NrAccountId int `json:"nrAccountId"` 1614 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1615 ResourceGroups []string `json:"resourceGroups,omitempty"` 1616 // The cloud service used in the integration. 1617 Service CloudService `json:"service,omitempty"` 1618 // The object last update date, in epoch (Unix) time 1619 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1620 } 1621 1622 func (x *CloudAzureContainersIntegration) ImplementsCloudIntegration() {} 1623 1624 // CloudAzureContainersIntegrationInput - Containers 1625 type CloudAzureContainersIntegrationInput struct { 1626 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1627 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1628 // The linked account identifier. 1629 LinkedAccountId int `json:"linkedAccountId"` 1630 // The data polling interval in seconds. 1631 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1632 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1633 ResourceGroups []string `json:"resourceGroups,omitempty"` 1634 } 1635 1636 // CloudAzureCosmosdbIntegration - Cosmos DB Integration 1637 type CloudAzureCosmosdbIntegration struct { 1638 // The object creation date, in epoch (Unix) time 1639 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1640 // The cloud service integration identifier. 1641 ID int `json:"id,omitempty"` 1642 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1643 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1644 // The parent linked account identifier. 1645 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1646 // The data polling interval in seconds. 1647 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1648 // The cloud service integration name. 1649 Name string `json:"name,omitempty"` 1650 // The parent NewRelic account identifier. 1651 NrAccountId int `json:"nrAccountId"` 1652 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1653 ResourceGroups []string `json:"resourceGroups,omitempty"` 1654 // The cloud service used in the integration. 1655 Service CloudService `json:"service,omitempty"` 1656 // The object last update date, in epoch (Unix) time 1657 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1658 } 1659 1660 func (x *CloudAzureCosmosdbIntegration) ImplementsCloudIntegration() {} 1661 1662 // CloudAzureCosmosdbIntegrationInput - Azure Cosmos DB 1663 type CloudAzureCosmosdbIntegrationInput struct { 1664 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1665 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1666 // The linked account identifier. 1667 LinkedAccountId int `json:"linkedAccountId"` 1668 // The data polling interval in seconds. 1669 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1670 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1671 ResourceGroups []string `json:"resourceGroups,omitempty"` 1672 } 1673 1674 // CloudAzureCostmanagementIntegration - Cost Management Integration 1675 type CloudAzureCostmanagementIntegration struct { 1676 // The object creation date, in epoch (Unix) time 1677 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1678 // The cloud service integration identifier. 1679 ID int `json:"id,omitempty"` 1680 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1681 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1682 // The parent linked account identifier. 1683 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1684 // The data polling interval in seconds. 1685 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1686 // The cloud service integration name. 1687 Name string `json:"name,omitempty"` 1688 // The parent NewRelic account identifier. 1689 NrAccountId int `json:"nrAccountId"` 1690 // The cloud service used in the integration. 1691 Service CloudService `json:"service,omitempty"` 1692 // Specify if additional cost data per tag should be collected. This field is case sensitive. 1693 TagKeys []string `json:"tagKeys,omitempty"` 1694 // The object last update date, in epoch (Unix) time 1695 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1696 } 1697 1698 func (x *CloudAzureCostmanagementIntegration) ImplementsCloudIntegration() {} 1699 1700 // CloudAzureCostmanagementIntegrationInput - Cost Management 1701 type CloudAzureCostmanagementIntegrationInput struct { 1702 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1703 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1704 // The linked account identifier. 1705 LinkedAccountId int `json:"linkedAccountId"` 1706 // The data polling interval in seconds. 1707 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1708 // Specify if additional cost data per tag should be collected. This field is case sensitive. 1709 TagKeys []string `json:"tagKeys,omitempty"` 1710 } 1711 1712 // CloudAzureDatafactoryIntegration - Data Factory Integration 1713 type CloudAzureDatafactoryIntegration struct { 1714 // The object creation date, in epoch (Unix) time 1715 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1716 // The cloud service integration identifier. 1717 ID int `json:"id,omitempty"` 1718 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1719 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1720 // The parent linked account identifier. 1721 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1722 // The data polling interval in seconds. 1723 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1724 // The cloud service integration name. 1725 Name string `json:"name,omitempty"` 1726 // The parent NewRelic account identifier. 1727 NrAccountId int `json:"nrAccountId"` 1728 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1729 ResourceGroups []string `json:"resourceGroups,omitempty"` 1730 // The cloud service used in the integration. 1731 Service CloudService `json:"service,omitempty"` 1732 // The object last update date, in epoch (Unix) time 1733 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1734 } 1735 1736 func (x *CloudAzureDatafactoryIntegration) ImplementsCloudIntegration() {} 1737 1738 // CloudAzureDatafactoryIntegrationInput - Data Factory 1739 type CloudAzureDatafactoryIntegrationInput struct { 1740 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1741 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1742 // The linked account identifier. 1743 LinkedAccountId int `json:"linkedAccountId"` 1744 // The data polling interval in seconds. 1745 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1746 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1747 ResourceGroups []string `json:"resourceGroups,omitempty"` 1748 } 1749 1750 // CloudAzureDisableIntegrationsInput - List of integrations 1751 type CloudAzureDisableIntegrationsInput struct { 1752 // Api Management integration 1753 AzureAPImanagement []CloudDisableAccountIntegrationInput `json:"azureApimanagement,omitempty"` 1754 // App Gateway integration 1755 AzureAppgateway []CloudDisableAccountIntegrationInput `json:"azureAppgateway,omitempty"` 1756 // App Service integration 1757 AzureAppservice []CloudDisableAccountIntegrationInput `json:"azureAppservice,omitempty"` 1758 // Containers integration 1759 AzureContainers []CloudDisableAccountIntegrationInput `json:"azureContainers,omitempty"` 1760 // Cosmos DB integration 1761 AzureCosmosdb []CloudDisableAccountIntegrationInput `json:"azureCosmosdb,omitempty"` 1762 // Cost Management integration 1763 AzureCostmanagement []CloudDisableAccountIntegrationInput `json:"azureCostmanagement,omitempty"` 1764 // Data Factory integration 1765 AzureDatafactory []CloudDisableAccountIntegrationInput `json:"azureDatafactory,omitempty"` 1766 // Event Hub integration 1767 AzureEventhub []CloudDisableAccountIntegrationInput `json:"azureEventhub,omitempty"` 1768 // Express Route integration 1769 AzureExpressroute []CloudDisableAccountIntegrationInput `json:"azureExpressroute,omitempty"` 1770 // Firewalls integration 1771 AzureFirewalls []CloudDisableAccountIntegrationInput `json:"azureFirewalls,omitempty"` 1772 // Front Door integration 1773 AzureFrontdoor []CloudDisableAccountIntegrationInput `json:"azureFrontdoor,omitempty"` 1774 // Functions integration 1775 AzureFunctions []CloudDisableAccountIntegrationInput `json:"azureFunctions,omitempty"` 1776 // Key Vault integration 1777 AzureKeyvault []CloudDisableAccountIntegrationInput `json:"azureKeyvault,omitempty"` 1778 // Load Balancer integration 1779 AzureLoadbalancer []CloudDisableAccountIntegrationInput `json:"azureLoadbalancer,omitempty"` 1780 // Logic Apps integration 1781 AzureLogicapps []CloudDisableAccountIntegrationInput `json:"azureLogicapps,omitempty"` 1782 // Machine Learning integration 1783 AzureMachinelearning []CloudDisableAccountIntegrationInput `json:"azureMachinelearning,omitempty"` 1784 // Database for MariaDB integration 1785 AzureMariadb []CloudDisableAccountIntegrationInput `json:"azureMariadb,omitempty"` 1786 // Database for MySQL integration 1787 AzureMysql []CloudDisableAccountIntegrationInput `json:"azureMysql,omitempty"` 1788 // Database for PostgreSQL integration 1789 AzurePostgresql []CloudDisableAccountIntegrationInput `json:"azurePostgresql,omitempty"` 1790 // Power BI Dedicated integration 1791 AzurePowerbidedicated []CloudDisableAccountIntegrationInput `json:"azurePowerbidedicated,omitempty"` 1792 // Redis Cache integration 1793 AzureRediscache []CloudDisableAccountIntegrationInput `json:"azureRediscache,omitempty"` 1794 // Service Bus integration 1795 AzureServicebus []CloudDisableAccountIntegrationInput `json:"azureServicebus,omitempty"` 1796 // Service Fabric integration 1797 AzureServicefabric []CloudDisableAccountIntegrationInput `json:"azureServicefabric,omitempty"` 1798 // SQL Database integration 1799 AzureSql []CloudDisableAccountIntegrationInput `json:"azureSql,omitempty"` 1800 // SQL Managed Instances integration 1801 AzureSqlmanaged []CloudDisableAccountIntegrationInput `json:"azureSqlmanaged,omitempty"` 1802 // Storage integration 1803 AzureStorage []CloudDisableAccountIntegrationInput `json:"azureStorage,omitempty"` 1804 // Virtual machine scale sets integration 1805 AzureVirtualmachine []CloudDisableAccountIntegrationInput `json:"azureVirtualmachine,omitempty"` 1806 // Virtual Network integration 1807 AzureVirtualnetworks []CloudDisableAccountIntegrationInput `json:"azureVirtualnetworks,omitempty"` 1808 // Virtual Machines integration 1809 AzureVms []CloudDisableAccountIntegrationInput `json:"azureVms,omitempty"` 1810 // VPN Gateways integration 1811 AzureVpngateways []CloudDisableAccountIntegrationInput `json:"azureVpngateways,omitempty"` 1812 } 1813 1814 // CloudAzureEventhubIntegration - Event Hub Integration 1815 type CloudAzureEventhubIntegration struct { 1816 // The object creation date, in epoch (Unix) time 1817 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1818 // The cloud service integration identifier. 1819 ID int `json:"id,omitempty"` 1820 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1821 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1822 // The parent linked account identifier. 1823 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1824 // The data polling interval in seconds. 1825 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1826 // The cloud service integration name. 1827 Name string `json:"name,omitempty"` 1828 // The parent NewRelic account identifier. 1829 NrAccountId int `json:"nrAccountId"` 1830 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1831 ResourceGroups []string `json:"resourceGroups,omitempty"` 1832 // The cloud service used in the integration. 1833 Service CloudService `json:"service,omitempty"` 1834 // The object last update date, in epoch (Unix) time 1835 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1836 } 1837 1838 func (x *CloudAzureEventhubIntegration) ImplementsCloudIntegration() {} 1839 1840 // CloudAzureEventhubIntegrationInput - Event Hub 1841 type CloudAzureEventhubIntegrationInput struct { 1842 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1843 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1844 // The linked account identifier. 1845 LinkedAccountId int `json:"linkedAccountId"` 1846 // The data polling interval in seconds. 1847 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1848 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1849 ResourceGroups []string `json:"resourceGroups,omitempty"` 1850 } 1851 1852 // CloudAzureExpressrouteIntegration - Express Route Integration 1853 type CloudAzureExpressrouteIntegration struct { 1854 // The object creation date, in epoch (Unix) time 1855 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1856 // The cloud service integration identifier. 1857 ID int `json:"id,omitempty"` 1858 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1859 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1860 // The parent linked account identifier. 1861 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1862 // The data polling interval in seconds. 1863 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1864 // The cloud service integration name. 1865 Name string `json:"name,omitempty"` 1866 // The parent NewRelic account identifier. 1867 NrAccountId int `json:"nrAccountId"` 1868 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1869 ResourceGroups []string `json:"resourceGroups,omitempty"` 1870 // The cloud service used in the integration. 1871 Service CloudService `json:"service,omitempty"` 1872 // The object last update date, in epoch (Unix) time 1873 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1874 } 1875 1876 func (x *CloudAzureExpressrouteIntegration) ImplementsCloudIntegration() {} 1877 1878 // CloudAzureExpressrouteIntegrationInput - Express Route 1879 type CloudAzureExpressrouteIntegrationInput struct { 1880 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1881 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1882 // The linked account identifier. 1883 LinkedAccountId int `json:"linkedAccountId"` 1884 // The data polling interval in seconds. 1885 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1886 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1887 ResourceGroups []string `json:"resourceGroups,omitempty"` 1888 } 1889 1890 // CloudAzureFirewallsIntegration - Firewalls Integration 1891 type CloudAzureFirewallsIntegration struct { 1892 // The object creation date, in epoch (Unix) time 1893 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1894 // The cloud service integration identifier. 1895 ID int `json:"id,omitempty"` 1896 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1897 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1898 // The parent linked account identifier. 1899 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1900 // The data polling interval in seconds. 1901 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1902 // The cloud service integration name. 1903 Name string `json:"name,omitempty"` 1904 // The parent NewRelic account identifier. 1905 NrAccountId int `json:"nrAccountId"` 1906 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1907 ResourceGroups []string `json:"resourceGroups,omitempty"` 1908 // The cloud service used in the integration. 1909 Service CloudService `json:"service,omitempty"` 1910 // The object last update date, in epoch (Unix) time 1911 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1912 } 1913 1914 func (x *CloudAzureFirewallsIntegration) ImplementsCloudIntegration() {} 1915 1916 // CloudAzureFirewallsIntegrationInput - Firewalls 1917 type CloudAzureFirewallsIntegrationInput struct { 1918 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1919 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1920 // The linked account identifier. 1921 LinkedAccountId int `json:"linkedAccountId"` 1922 // The data polling interval in seconds. 1923 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1924 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1925 ResourceGroups []string `json:"resourceGroups,omitempty"` 1926 } 1927 1928 // CloudAzureFrontdoorIntegration - Front Door Integration 1929 type CloudAzureFrontdoorIntegration struct { 1930 // The object creation date, in epoch (Unix) time 1931 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1932 // The cloud service integration identifier. 1933 ID int `json:"id,omitempty"` 1934 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1935 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1936 // The parent linked account identifier. 1937 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1938 // The data polling interval in seconds. 1939 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1940 // The cloud service integration name. 1941 Name string `json:"name,omitempty"` 1942 // The parent NewRelic account identifier. 1943 NrAccountId int `json:"nrAccountId"` 1944 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1945 ResourceGroups []string `json:"resourceGroups,omitempty"` 1946 // The cloud service used in the integration. 1947 Service CloudService `json:"service,omitempty"` 1948 // The object last update date, in epoch (Unix) time 1949 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1950 } 1951 1952 func (x *CloudAzureFrontdoorIntegration) ImplementsCloudIntegration() {} 1953 1954 // CloudAzureFrontdoorIntegrationInput - Front Door 1955 type CloudAzureFrontdoorIntegrationInput struct { 1956 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1957 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1958 // The linked account identifier. 1959 LinkedAccountId int `json:"linkedAccountId"` 1960 // The data polling interval in seconds. 1961 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1962 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1963 ResourceGroups []string `json:"resourceGroups,omitempty"` 1964 } 1965 1966 // CloudAzureFunctionsIntegration - Functions Integration 1967 type CloudAzureFunctionsIntegration struct { 1968 // The object creation date, in epoch (Unix) time 1969 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 1970 // The cloud service integration identifier. 1971 ID int `json:"id,omitempty"` 1972 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1973 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1974 // The parent linked account identifier. 1975 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 1976 // The data polling interval in seconds. 1977 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 1978 // The cloud service integration name. 1979 Name string `json:"name,omitempty"` 1980 // The parent NewRelic account identifier. 1981 NrAccountId int `json:"nrAccountId"` 1982 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 1983 ResourceGroups []string `json:"resourceGroups,omitempty"` 1984 // The cloud service used in the integration. 1985 Service CloudService `json:"service,omitempty"` 1986 // The object last update date, in epoch (Unix) time 1987 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 1988 } 1989 1990 func (x *CloudAzureFunctionsIntegration) ImplementsCloudIntegration() {} 1991 1992 // CloudAzureFunctionsIntegrationInput - Azure Functions 1993 type CloudAzureFunctionsIntegrationInput struct { 1994 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 1995 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 1996 // The linked account identifier. 1997 LinkedAccountId int `json:"linkedAccountId"` 1998 // The data polling interval in seconds. 1999 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2000 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2001 ResourceGroups []string `json:"resourceGroups,omitempty"` 2002 } 2003 2004 // CloudAzureIntegrationsInput - List of integrations 2005 type CloudAzureIntegrationsInput struct { 2006 // Api Management integration 2007 AzureAPImanagement []CloudAzureAPImanagementIntegrationInput `json:"azureApimanagement,omitempty"` 2008 // App Gateway integration 2009 AzureAppgateway []CloudAzureAppgatewayIntegrationInput `json:"azureAppgateway,omitempty"` 2010 // App Service integration 2011 AzureAppservice []CloudAzureAppserviceIntegrationInput `json:"azureAppservice,omitempty"` 2012 // Containers integration 2013 AzureContainers []CloudAzureContainersIntegrationInput `json:"azureContainers,omitempty"` 2014 // Cosmos DB integration 2015 AzureCosmosdb []CloudAzureCosmosdbIntegrationInput `json:"azureCosmosdb,omitempty"` 2016 // Cost Management integration 2017 AzureCostmanagement []CloudAzureCostmanagementIntegrationInput `json:"azureCostmanagement,omitempty"` 2018 // Data Factory integration 2019 AzureDatafactory []CloudAzureDatafactoryIntegrationInput `json:"azureDatafactory,omitempty"` 2020 // Event Hub integration 2021 AzureEventhub []CloudAzureEventhubIntegrationInput `json:"azureEventhub,omitempty"` 2022 // Express Route integration 2023 AzureExpressroute []CloudAzureExpressrouteIntegrationInput `json:"azureExpressroute,omitempty"` 2024 // Firewalls integration 2025 AzureFirewalls []CloudAzureFirewallsIntegrationInput `json:"azureFirewalls,omitempty"` 2026 // Front Door integration 2027 AzureFrontdoor []CloudAzureFrontdoorIntegrationInput `json:"azureFrontdoor,omitempty"` 2028 // Functions integration 2029 AzureFunctions []CloudAzureFunctionsIntegrationInput `json:"azureFunctions,omitempty"` 2030 // Key Vault integration 2031 AzureKeyvault []CloudAzureKeyvaultIntegrationInput `json:"azureKeyvault,omitempty"` 2032 // Load Balancer integration 2033 AzureLoadbalancer []CloudAzureLoadbalancerIntegrationInput `json:"azureLoadbalancer,omitempty"` 2034 // Logic Apps integration 2035 AzureLogicapps []CloudAzureLogicappsIntegrationInput `json:"azureLogicapps,omitempty"` 2036 // Machine Learning integration 2037 AzureMachinelearning []CloudAzureMachinelearningIntegrationInput `json:"azureMachinelearning,omitempty"` 2038 // Database for MariaDB integration 2039 AzureMariadb []CloudAzureMariadbIntegrationInput `json:"azureMariadb,omitempty"` 2040 // Database for MySQL integration 2041 AzureMysql []CloudAzureMysqlIntegrationInput `json:"azureMysql,omitempty"` 2042 // Database for PostgreSQL integration 2043 AzurePostgresql []CloudAzurePostgresqlIntegrationInput `json:"azurePostgresql,omitempty"` 2044 // Power BI Dedicated integration 2045 AzurePowerbidedicated []CloudAzurePowerbidedicatedIntegrationInput `json:"azurePowerbidedicated,omitempty"` 2046 // Redis Cache integration 2047 AzureRediscache []CloudAzureRediscacheIntegrationInput `json:"azureRediscache,omitempty"` 2048 // Service Bus integration 2049 AzureServicebus []CloudAzureServicebusIntegrationInput `json:"azureServicebus,omitempty"` 2050 // Service Fabric integration 2051 AzureServicefabric []CloudAzureServicefabricIntegrationInput `json:"azureServicefabric,omitempty"` 2052 // SQL Database integration 2053 AzureSql []CloudAzureSqlIntegrationInput `json:"azureSql,omitempty"` 2054 // SQL Managed Instances integration 2055 AzureSqlmanaged []CloudAzureSqlmanagedIntegrationInput `json:"azureSqlmanaged,omitempty"` 2056 // Storage integration 2057 AzureStorage []CloudAzureStorageIntegrationInput `json:"azureStorage,omitempty"` 2058 // Virtual machine scale sets integration 2059 AzureVirtualmachine []CloudAzureVirtualmachineIntegrationInput `json:"azureVirtualmachine,omitempty"` 2060 // Virtual Network integration 2061 AzureVirtualnetworks []CloudAzureVirtualnetworksIntegrationInput `json:"azureVirtualnetworks,omitempty"` 2062 // Virtual Machines integration 2063 AzureVms []CloudAzureVmsIntegrationInput `json:"azureVms,omitempty"` 2064 // VPN Gateways integration 2065 AzureVpngateways []CloudAzureVpngatewaysIntegrationInput `json:"azureVpngateways,omitempty"` 2066 } 2067 2068 // CloudAzureKeyvaultIntegration - Key Vault Integration 2069 type CloudAzureKeyvaultIntegration struct { 2070 // The object creation date, in epoch (Unix) time 2071 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2072 // The cloud service integration identifier. 2073 ID int `json:"id,omitempty"` 2074 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2075 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2076 // The parent linked account identifier. 2077 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2078 // The data polling interval in seconds. 2079 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2080 // The cloud service integration name. 2081 Name string `json:"name,omitempty"` 2082 // The parent NewRelic account identifier. 2083 NrAccountId int `json:"nrAccountId"` 2084 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2085 ResourceGroups []string `json:"resourceGroups,omitempty"` 2086 // The cloud service used in the integration. 2087 Service CloudService `json:"service,omitempty"` 2088 // The object last update date, in epoch (Unix) time 2089 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2090 } 2091 2092 func (x *CloudAzureKeyvaultIntegration) ImplementsCloudIntegration() {} 2093 2094 // CloudAzureKeyvaultIntegrationInput - Key Vault 2095 type CloudAzureKeyvaultIntegrationInput struct { 2096 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2097 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2098 // The linked account identifier. 2099 LinkedAccountId int `json:"linkedAccountId"` 2100 // The data polling interval in seconds. 2101 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2102 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2103 ResourceGroups []string `json:"resourceGroups,omitempty"` 2104 } 2105 2106 // CloudAzureLinkAccountInput - Information required to link a Azure account to a NewRelic account. 2107 type CloudAzureLinkAccountInput struct { 2108 // The Azure account application identifier (used to fetch data). 2109 ApplicationID string `json:"applicationId"` 2110 // The Azure account application secret key. 2111 ClientSecret SecureValue `json:"clientSecret"` 2112 // The linked account name. 2113 Name string `json:"name"` 2114 // The Azure account subscription identifier. 2115 SubscriptionId string `json:"subscriptionId"` 2116 // The Azure account tenant identifier. 2117 TenantId string `json:"tenantId"` 2118 } 2119 2120 // CloudAzureLoadbalancerIntegration - Load Balancer Integration 2121 type CloudAzureLoadbalancerIntegration struct { 2122 // The object creation date, in epoch (Unix) time 2123 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2124 // The cloud service integration identifier. 2125 ID int `json:"id,omitempty"` 2126 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2127 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2128 // The parent linked account identifier. 2129 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2130 // The data polling interval in seconds. 2131 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2132 // The cloud service integration name. 2133 Name string `json:"name,omitempty"` 2134 // The parent NewRelic account identifier. 2135 NrAccountId int `json:"nrAccountId"` 2136 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2137 ResourceGroups []string `json:"resourceGroups,omitempty"` 2138 // The cloud service used in the integration. 2139 Service CloudService `json:"service,omitempty"` 2140 // The object last update date, in epoch (Unix) time 2141 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2142 } 2143 2144 func (x *CloudAzureLoadbalancerIntegration) ImplementsCloudIntegration() {} 2145 2146 // CloudAzureLoadbalancerIntegrationInput - Azure Load Balancer 2147 type CloudAzureLoadbalancerIntegrationInput struct { 2148 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2149 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2150 // The linked account identifier. 2151 LinkedAccountId int `json:"linkedAccountId"` 2152 // The data polling interval in seconds. 2153 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2154 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2155 ResourceGroups []string `json:"resourceGroups,omitempty"` 2156 } 2157 2158 // CloudAzureLogicappsIntegration - Logic Apps Integration 2159 type CloudAzureLogicappsIntegration struct { 2160 // The object creation date, in epoch (Unix) time 2161 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2162 // The cloud service integration identifier. 2163 ID int `json:"id,omitempty"` 2164 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2165 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2166 // The parent linked account identifier. 2167 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2168 // The data polling interval in seconds. 2169 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2170 // The cloud service integration name. 2171 Name string `json:"name,omitempty"` 2172 // The parent NewRelic account identifier. 2173 NrAccountId int `json:"nrAccountId"` 2174 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2175 ResourceGroups []string `json:"resourceGroups,omitempty"` 2176 // The cloud service used in the integration. 2177 Service CloudService `json:"service,omitempty"` 2178 // The object last update date, in epoch (Unix) time 2179 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2180 } 2181 2182 func (x *CloudAzureLogicappsIntegration) ImplementsCloudIntegration() {} 2183 2184 // CloudAzureLogicappsIntegrationInput - Logic Apps 2185 type CloudAzureLogicappsIntegrationInput struct { 2186 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2187 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2188 // The linked account identifier. 2189 LinkedAccountId int `json:"linkedAccountId"` 2190 // The data polling interval in seconds. 2191 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2192 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2193 ResourceGroups []string `json:"resourceGroups,omitempty"` 2194 } 2195 2196 // CloudAzureMachinelearningIntegration - Machine Learning Integration 2197 type CloudAzureMachinelearningIntegration struct { 2198 // The object creation date, in epoch (Unix) time 2199 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2200 // The cloud service integration identifier. 2201 ID int `json:"id,omitempty"` 2202 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2203 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2204 // The parent linked account identifier. 2205 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2206 // The data polling interval in seconds. 2207 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2208 // The cloud service integration name. 2209 Name string `json:"name,omitempty"` 2210 // The parent NewRelic account identifier. 2211 NrAccountId int `json:"nrAccountId"` 2212 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2213 ResourceGroups []string `json:"resourceGroups,omitempty"` 2214 // The cloud service used in the integration. 2215 Service CloudService `json:"service,omitempty"` 2216 // The object last update date, in epoch (Unix) time 2217 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2218 } 2219 2220 func (x *CloudAzureMachinelearningIntegration) ImplementsCloudIntegration() {} 2221 2222 // CloudAzureMachinelearningIntegrationInput - Machine Learning 2223 type CloudAzureMachinelearningIntegrationInput struct { 2224 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2225 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2226 // The linked account identifier. 2227 LinkedAccountId int `json:"linkedAccountId"` 2228 // The data polling interval in seconds. 2229 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2230 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2231 ResourceGroups []string `json:"resourceGroups,omitempty"` 2232 } 2233 2234 // CloudAzureMariadbIntegration - Database for MariaDB Integration 2235 type CloudAzureMariadbIntegration struct { 2236 // The object creation date, in epoch (Unix) time 2237 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2238 // The cloud service integration identifier. 2239 ID int `json:"id,omitempty"` 2240 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2241 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2242 // The parent linked account identifier. 2243 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2244 // The data polling interval in seconds. 2245 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2246 // The cloud service integration name. 2247 Name string `json:"name,omitempty"` 2248 // The parent NewRelic account identifier. 2249 NrAccountId int `json:"nrAccountId"` 2250 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2251 ResourceGroups []string `json:"resourceGroups,omitempty"` 2252 // The cloud service used in the integration. 2253 Service CloudService `json:"service,omitempty"` 2254 // The object last update date, in epoch (Unix) time 2255 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2256 } 2257 2258 func (x *CloudAzureMariadbIntegration) ImplementsCloudIntegration() {} 2259 2260 // CloudAzureMariadbIntegrationInput - Database for MariaDB 2261 type CloudAzureMariadbIntegrationInput struct { 2262 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2263 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2264 // The linked account identifier. 2265 LinkedAccountId int `json:"linkedAccountId"` 2266 // The data polling interval in seconds. 2267 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2268 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2269 ResourceGroups []string `json:"resourceGroups,omitempty"` 2270 } 2271 2272 // CloudAzureMysqlIntegration - Database for MySQL Integration 2273 type CloudAzureMysqlIntegration struct { 2274 // The object creation date, in epoch (Unix) time 2275 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2276 // The cloud service integration identifier. 2277 ID int `json:"id,omitempty"` 2278 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2279 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2280 // The parent linked account identifier. 2281 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2282 // The data polling interval in seconds. 2283 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2284 // The cloud service integration name. 2285 Name string `json:"name,omitempty"` 2286 // The parent NewRelic account identifier. 2287 NrAccountId int `json:"nrAccountId"` 2288 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2289 ResourceGroups []string `json:"resourceGroups,omitempty"` 2290 // The cloud service used in the integration. 2291 Service CloudService `json:"service,omitempty"` 2292 // The object last update date, in epoch (Unix) time 2293 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2294 } 2295 2296 func (x *CloudAzureMysqlIntegration) ImplementsCloudIntegration() {} 2297 2298 // CloudAzureMysqlIntegrationInput - Database for MySQL 2299 type CloudAzureMysqlIntegrationInput struct { 2300 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2301 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2302 // The linked account identifier. 2303 LinkedAccountId int `json:"linkedAccountId"` 2304 // The data polling interval in seconds. 2305 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2306 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2307 ResourceGroups []string `json:"resourceGroups,omitempty"` 2308 } 2309 2310 // CloudAzurePostgresqlIntegration - Database for PostgreSQL Integration 2311 type CloudAzurePostgresqlIntegration struct { 2312 // The object creation date, in epoch (Unix) time 2313 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2314 // The cloud service integration identifier. 2315 ID int `json:"id,omitempty"` 2316 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2317 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2318 // The parent linked account identifier. 2319 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2320 // The data polling interval in seconds. 2321 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2322 // The cloud service integration name. 2323 Name string `json:"name,omitempty"` 2324 // The parent NewRelic account identifier. 2325 NrAccountId int `json:"nrAccountId"` 2326 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2327 ResourceGroups []string `json:"resourceGroups,omitempty"` 2328 // The cloud service used in the integration. 2329 Service CloudService `json:"service,omitempty"` 2330 // The object last update date, in epoch (Unix) time 2331 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2332 } 2333 2334 func (x *CloudAzurePostgresqlIntegration) ImplementsCloudIntegration() {} 2335 2336 // CloudAzurePostgresqlIntegrationInput - Database for PostgreSQL 2337 type CloudAzurePostgresqlIntegrationInput struct { 2338 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2339 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2340 // The linked account identifier. 2341 LinkedAccountId int `json:"linkedAccountId"` 2342 // The data polling interval in seconds. 2343 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2344 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2345 ResourceGroups []string `json:"resourceGroups,omitempty"` 2346 } 2347 2348 // CloudAzurePowerbidedicatedIntegration - Power BI Dedicated Integration 2349 type CloudAzurePowerbidedicatedIntegration struct { 2350 // The object creation date, in epoch (Unix) time 2351 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2352 // The cloud service integration identifier. 2353 ID int `json:"id,omitempty"` 2354 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2355 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2356 // The parent linked account identifier. 2357 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2358 // The data polling interval in seconds. 2359 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2360 // The cloud service integration name. 2361 Name string `json:"name,omitempty"` 2362 // The parent NewRelic account identifier. 2363 NrAccountId int `json:"nrAccountId"` 2364 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2365 ResourceGroups []string `json:"resourceGroups,omitempty"` 2366 // The cloud service used in the integration. 2367 Service CloudService `json:"service,omitempty"` 2368 // The object last update date, in epoch (Unix) time 2369 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2370 } 2371 2372 func (x *CloudAzurePowerbidedicatedIntegration) ImplementsCloudIntegration() {} 2373 2374 // CloudAzurePowerbidedicatedIntegrationInput - Power BI Dedicated 2375 type CloudAzurePowerbidedicatedIntegrationInput struct { 2376 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2377 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2378 // The linked account identifier. 2379 LinkedAccountId int `json:"linkedAccountId"` 2380 // The data polling interval in seconds. 2381 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2382 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2383 ResourceGroups []string `json:"resourceGroups,omitempty"` 2384 } 2385 2386 // CloudAzureRediscacheIntegration - Redis Cache Integration 2387 type CloudAzureRediscacheIntegration struct { 2388 // The object creation date, in epoch (Unix) time 2389 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2390 // The cloud service integration identifier. 2391 ID int `json:"id,omitempty"` 2392 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2393 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2394 // The parent linked account identifier. 2395 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2396 // The data polling interval in seconds. 2397 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2398 // The cloud service integration name. 2399 Name string `json:"name,omitempty"` 2400 // The parent NewRelic account identifier. 2401 NrAccountId int `json:"nrAccountId"` 2402 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2403 ResourceGroups []string `json:"resourceGroups,omitempty"` 2404 // The cloud service used in the integration. 2405 Service CloudService `json:"service,omitempty"` 2406 // The object last update date, in epoch (Unix) time 2407 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2408 } 2409 2410 func (x *CloudAzureRediscacheIntegration) ImplementsCloudIntegration() {} 2411 2412 // CloudAzureRediscacheIntegrationInput - Azure Redis Cache 2413 type CloudAzureRediscacheIntegrationInput struct { 2414 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2415 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2416 // The linked account identifier. 2417 LinkedAccountId int `json:"linkedAccountId"` 2418 // The data polling interval in seconds. 2419 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2420 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2421 ResourceGroups []string `json:"resourceGroups,omitempty"` 2422 } 2423 2424 // CloudAzureServicebusIntegration - Service Bus Integration 2425 type CloudAzureServicebusIntegration struct { 2426 // The object creation date, in epoch (Unix) time 2427 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2428 // The cloud service integration identifier. 2429 ID int `json:"id,omitempty"` 2430 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2431 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2432 // The parent linked account identifier. 2433 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2434 // The data polling interval in seconds. 2435 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2436 // The cloud service integration name. 2437 Name string `json:"name,omitempty"` 2438 // The parent NewRelic account identifier. 2439 NrAccountId int `json:"nrAccountId"` 2440 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2441 ResourceGroups []string `json:"resourceGroups,omitempty"` 2442 // The cloud service used in the integration. 2443 Service CloudService `json:"service,omitempty"` 2444 // The object last update date, in epoch (Unix) time 2445 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2446 } 2447 2448 func (x *CloudAzureServicebusIntegration) ImplementsCloudIntegration() {} 2449 2450 // CloudAzureServicebusIntegrationInput - Azure Service Bus 2451 type CloudAzureServicebusIntegrationInput struct { 2452 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2453 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2454 // The linked account identifier. 2455 LinkedAccountId int `json:"linkedAccountId"` 2456 // The data polling interval in seconds. 2457 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2458 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2459 ResourceGroups []string `json:"resourceGroups,omitempty"` 2460 } 2461 2462 // CloudAzureServicefabricIntegration - Service Fabric Integration 2463 type CloudAzureServicefabricIntegration struct { 2464 // The object creation date, in epoch (Unix) time 2465 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2466 // The cloud service integration identifier. 2467 ID int `json:"id,omitempty"` 2468 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2469 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2470 // The parent linked account identifier. 2471 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2472 // The data polling interval in seconds. 2473 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2474 // The cloud service integration name. 2475 Name string `json:"name,omitempty"` 2476 // The parent NewRelic account identifier. 2477 NrAccountId int `json:"nrAccountId"` 2478 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2479 ResourceGroups []string `json:"resourceGroups,omitempty"` 2480 // The cloud service used in the integration. 2481 Service CloudService `json:"service,omitempty"` 2482 // The object last update date, in epoch (Unix) time 2483 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2484 } 2485 2486 func (x *CloudAzureServicefabricIntegration) ImplementsCloudIntegration() {} 2487 2488 // CloudAzureServicefabricIntegrationInput - Service Fabric 2489 type CloudAzureServicefabricIntegrationInput struct { 2490 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2491 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2492 // The linked account identifier. 2493 LinkedAccountId int `json:"linkedAccountId"` 2494 // The data polling interval in seconds. 2495 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2496 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2497 ResourceGroups []string `json:"resourceGroups,omitempty"` 2498 } 2499 2500 // CloudAzureSqlIntegration - SQL Database Integration 2501 type CloudAzureSqlIntegration struct { 2502 // The object creation date, in epoch (Unix) time 2503 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2504 // The cloud service integration identifier. 2505 ID int `json:"id,omitempty"` 2506 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2507 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2508 // The parent linked account identifier. 2509 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2510 // The data polling interval in seconds. 2511 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2512 // The cloud service integration name. 2513 Name string `json:"name,omitempty"` 2514 // The parent NewRelic account identifier. 2515 NrAccountId int `json:"nrAccountId"` 2516 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2517 ResourceGroups []string `json:"resourceGroups,omitempty"` 2518 // The cloud service used in the integration. 2519 Service CloudService `json:"service,omitempty"` 2520 // The object last update date, in epoch (Unix) time 2521 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2522 } 2523 2524 func (x *CloudAzureSqlIntegration) ImplementsCloudIntegration() {} 2525 2526 // CloudAzureSqlIntegrationInput - Azure SQL Database 2527 type CloudAzureSqlIntegrationInput struct { 2528 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2529 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2530 // The linked account identifier. 2531 LinkedAccountId int `json:"linkedAccountId"` 2532 // The data polling interval in seconds. 2533 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2534 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2535 ResourceGroups []string `json:"resourceGroups,omitempty"` 2536 } 2537 2538 // CloudAzureSqlmanagedIntegration - SQL Managed Instances Integration 2539 type CloudAzureSqlmanagedIntegration struct { 2540 // The object creation date, in epoch (Unix) time 2541 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2542 // The cloud service integration identifier. 2543 ID int `json:"id,omitempty"` 2544 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2545 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2546 // The parent linked account identifier. 2547 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2548 // The data polling interval in seconds. 2549 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2550 // The cloud service integration name. 2551 Name string `json:"name,omitempty"` 2552 // The parent NewRelic account identifier. 2553 NrAccountId int `json:"nrAccountId"` 2554 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2555 ResourceGroups []string `json:"resourceGroups,omitempty"` 2556 // The cloud service used in the integration. 2557 Service CloudService `json:"service,omitempty"` 2558 // The object last update date, in epoch (Unix) time 2559 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2560 } 2561 2562 func (x *CloudAzureSqlmanagedIntegration) ImplementsCloudIntegration() {} 2563 2564 // CloudAzureSqlmanagedIntegrationInput - SQL Managed Instances 2565 type CloudAzureSqlmanagedIntegrationInput struct { 2566 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2567 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2568 // The linked account identifier. 2569 LinkedAccountId int `json:"linkedAccountId"` 2570 // The data polling interval in seconds. 2571 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2572 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2573 ResourceGroups []string `json:"resourceGroups,omitempty"` 2574 } 2575 2576 // CloudAzureStorageIntegration - Storage Integration 2577 type CloudAzureStorageIntegration struct { 2578 // The object creation date, in epoch (Unix) time 2579 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2580 // The cloud service integration identifier. 2581 ID int `json:"id,omitempty"` 2582 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2583 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2584 // The parent linked account identifier. 2585 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2586 // The data polling interval in seconds. 2587 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2588 // The cloud service integration name. 2589 Name string `json:"name,omitempty"` 2590 // The parent NewRelic account identifier. 2591 NrAccountId int `json:"nrAccountId"` 2592 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2593 ResourceGroups []string `json:"resourceGroups,omitempty"` 2594 // The cloud service used in the integration. 2595 Service CloudService `json:"service,omitempty"` 2596 // The object last update date, in epoch (Unix) time 2597 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2598 } 2599 2600 func (x *CloudAzureStorageIntegration) ImplementsCloudIntegration() {} 2601 2602 // CloudAzureStorageIntegrationInput - Azure Storage 2603 type CloudAzureStorageIntegrationInput struct { 2604 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2605 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2606 // The linked account identifier. 2607 LinkedAccountId int `json:"linkedAccountId"` 2608 // The data polling interval in seconds. 2609 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2610 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2611 ResourceGroups []string `json:"resourceGroups,omitempty"` 2612 } 2613 2614 // CloudAzureVirtualmachineIntegration - Virtual machine scale sets Integration 2615 type CloudAzureVirtualmachineIntegration struct { 2616 // The object creation date, in epoch (Unix) time 2617 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2618 // The cloud service integration identifier. 2619 ID int `json:"id,omitempty"` 2620 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2621 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2622 // The parent linked account identifier. 2623 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2624 // The data polling interval in seconds. 2625 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2626 // The cloud service integration name. 2627 Name string `json:"name,omitempty"` 2628 // The parent NewRelic account identifier. 2629 NrAccountId int `json:"nrAccountId"` 2630 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2631 ResourceGroups []string `json:"resourceGroups,omitempty"` 2632 // The cloud service used in the integration. 2633 Service CloudService `json:"service,omitempty"` 2634 // The object last update date, in epoch (Unix) time 2635 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2636 } 2637 2638 func (x *CloudAzureVirtualmachineIntegration) ImplementsCloudIntegration() {} 2639 2640 // CloudAzureVirtualmachineIntegrationInput - Virtual machine scale sets 2641 type CloudAzureVirtualmachineIntegrationInput struct { 2642 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2643 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2644 // The linked account identifier. 2645 LinkedAccountId int `json:"linkedAccountId"` 2646 // The data polling interval in seconds. 2647 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2648 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2649 ResourceGroups []string `json:"resourceGroups,omitempty"` 2650 } 2651 2652 // CloudAzureVirtualnetworksIntegration - Virtual Network Integration 2653 type CloudAzureVirtualnetworksIntegration struct { 2654 // The object creation date, in epoch (Unix) time 2655 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2656 // The cloud service integration identifier. 2657 ID int `json:"id,omitempty"` 2658 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2659 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2660 // The parent linked account identifier. 2661 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2662 // The data polling interval in seconds. 2663 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2664 // The cloud service integration name. 2665 Name string `json:"name,omitempty"` 2666 // The parent NewRelic account identifier. 2667 NrAccountId int `json:"nrAccountId"` 2668 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2669 ResourceGroups []string `json:"resourceGroups,omitempty"` 2670 // The cloud service used in the integration. 2671 Service CloudService `json:"service,omitempty"` 2672 // The object last update date, in epoch (Unix) time 2673 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2674 } 2675 2676 func (x *CloudAzureVirtualnetworksIntegration) ImplementsCloudIntegration() {} 2677 2678 // CloudAzureVirtualnetworksIntegrationInput - Azure Virtual Network 2679 type CloudAzureVirtualnetworksIntegrationInput struct { 2680 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2681 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2682 // The linked account identifier. 2683 LinkedAccountId int `json:"linkedAccountId"` 2684 // The data polling interval in seconds. 2685 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2686 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2687 ResourceGroups []string `json:"resourceGroups,omitempty"` 2688 } 2689 2690 // CloudAzureVmsIntegration - Virtual Machines Integration 2691 type CloudAzureVmsIntegration struct { 2692 // The object creation date, in epoch (Unix) time 2693 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2694 // The cloud service integration identifier. 2695 ID int `json:"id,omitempty"` 2696 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2697 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2698 // The parent linked account identifier. 2699 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2700 // The data polling interval in seconds. 2701 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2702 // The cloud service integration name. 2703 Name string `json:"name,omitempty"` 2704 // The parent NewRelic account identifier. 2705 NrAccountId int `json:"nrAccountId"` 2706 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2707 ResourceGroups []string `json:"resourceGroups,omitempty"` 2708 // The cloud service used in the integration. 2709 Service CloudService `json:"service,omitempty"` 2710 // The object last update date, in epoch (Unix) time 2711 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2712 } 2713 2714 func (x *CloudAzureVmsIntegration) ImplementsCloudIntegration() {} 2715 2716 // CloudAzureVmsIntegrationInput - Azure Virtual Machines 2717 type CloudAzureVmsIntegrationInput struct { 2718 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2719 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2720 // The linked account identifier. 2721 LinkedAccountId int `json:"linkedAccountId"` 2722 // The data polling interval in seconds. 2723 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2724 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2725 ResourceGroups []string `json:"resourceGroups,omitempty"` 2726 } 2727 2728 // CloudAzureVpngatewaysIntegration - VPN Gateways Integration 2729 type CloudAzureVpngatewaysIntegration struct { 2730 // The object creation date, in epoch (Unix) time 2731 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2732 // The cloud service integration identifier. 2733 ID int `json:"id,omitempty"` 2734 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2735 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2736 // The parent linked account identifier. 2737 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2738 // The data polling interval in seconds. 2739 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2740 // The cloud service integration name. 2741 Name string `json:"name,omitempty"` 2742 // The parent NewRelic account identifier. 2743 NrAccountId int `json:"nrAccountId"` 2744 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2745 ResourceGroups []string `json:"resourceGroups,omitempty"` 2746 // The cloud service used in the integration. 2747 Service CloudService `json:"service,omitempty"` 2748 // The object last update date, in epoch (Unix) time 2749 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2750 } 2751 2752 func (x *CloudAzureVpngatewaysIntegration) ImplementsCloudIntegration() {} 2753 2754 // CloudAzureVpngatewaysIntegrationInput - VPN Gateways 2755 type CloudAzureVpngatewaysIntegrationInput struct { 2756 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2757 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2758 // The linked account identifier. 2759 LinkedAccountId int `json:"linkedAccountId"` 2760 // The data polling interval in seconds. 2761 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2762 // Specify each Resource group associated with the resources that you want to monitor. Filter values are case-sensitive. 2763 ResourceGroups []string `json:"resourceGroups,omitempty"` 2764 } 2765 2766 // CloudBaseIntegration - Base Integration Object 2767 type CloudBaseIntegration struct { 2768 // The object creation date, in epoch (Unix) time 2769 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2770 // The cloud service integration identifier. 2771 ID int `json:"id,omitempty"` 2772 // The parent linked account identifier. 2773 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2774 // The cloud service integration name. 2775 Name string `json:"name,omitempty"` 2776 // The parent NewRelic account identifier. 2777 NrAccountId int `json:"nrAccountId"` 2778 // The cloud service used in the integration. 2779 Service CloudService `json:"service,omitempty"` 2780 // The object last update date, in epoch (Unix) time 2781 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2782 } 2783 2784 func (x *CloudBaseIntegration) ImplementsCloudIntegration() {} 2785 2786 // CloudBaseProvider - Base Provider Object 2787 type CloudBaseProvider struct { 2788 // The object creation date, in epoch (Unix) time 2789 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2790 // The cloud provider identifier in NewRelic. 2791 ID int `json:"id"` 2792 // The cloud provider icon name. 2793 Icon string `json:"icon"` 2794 // The cloud provider name. 2795 Name string `json:"name"` 2796 // Get details of one cloud provider service. 2797 Service CloudService `json:"service,omitempty"` 2798 // Get details of all the cloud provider services available for integration. 2799 Services []CloudService `json:"services"` 2800 // The cloud provider short name. 2801 Slug string `json:"slug"` 2802 // The object last update date, in epoch (Unix) time 2803 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2804 } 2805 2806 func (x *CloudBaseProvider) ImplementsCloudProvider() {} 2807 2808 // CloudBillingIntegration - Billing Integration 2809 type CloudBillingIntegration struct { 2810 // The object creation date, in epoch (Unix) time 2811 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2812 // The cloud service integration identifier. 2813 ID int `json:"id,omitempty"` 2814 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2815 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2816 // The parent linked account identifier. 2817 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2818 // The data polling interval in seconds. 2819 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2820 // The cloud service integration name. 2821 Name string `json:"name,omitempty"` 2822 // The parent NewRelic account identifier. 2823 NrAccountId int `json:"nrAccountId"` 2824 // The cloud service used in the integration. 2825 Service CloudService `json:"service,omitempty"` 2826 // The object last update date, in epoch (Unix) time 2827 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2828 } 2829 2830 func (x *CloudBillingIntegration) ImplementsCloudIntegration() {} 2831 2832 // CloudBillingIntegrationInput - AWS Billing 2833 type CloudBillingIntegrationInput struct { 2834 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2835 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2836 // The linked account identifier. 2837 LinkedAccountId int `json:"linkedAccountId"` 2838 // The data polling interval in seconds. 2839 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2840 } 2841 2842 // CloudCloudfrontIntegration - CloudFront Integration 2843 type CloudCloudfrontIntegration struct { 2844 // The object creation date, in epoch (Unix) time 2845 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2846 // Specify if Lambdas@Edge should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 2847 FetchLambdasAtEdge bool `json:"fetchLambdasAtEdge,omitempty"` 2848 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 2849 FetchTags bool `json:"fetchTags,omitempty"` 2850 // The cloud service integration identifier. 2851 ID int `json:"id,omitempty"` 2852 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2853 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2854 // The parent linked account identifier. 2855 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2856 // The data polling interval in seconds. 2857 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2858 // The cloud service integration name. 2859 Name string `json:"name,omitempty"` 2860 // The parent NewRelic account identifier. 2861 NrAccountId int `json:"nrAccountId"` 2862 // The cloud service used in the integration. 2863 Service CloudService `json:"service,omitempty"` 2864 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 2865 TagKey string `json:"tagKey,omitempty"` 2866 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 2867 TagValue string `json:"tagValue,omitempty"` 2868 // The object last update date, in epoch (Unix) time 2869 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2870 } 2871 2872 func (x *CloudCloudfrontIntegration) ImplementsCloudIntegration() {} 2873 2874 // CloudCloudfrontIntegrationInput - Amazon CloudFront 2875 type CloudCloudfrontIntegrationInput struct { 2876 // Specify if Lambdas@Edge should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 2877 FetchLambdasAtEdge bool `json:"fetchLambdasAtEdge,omitempty"` 2878 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 2879 FetchTags bool `json:"fetchTags,omitempty"` 2880 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2881 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2882 // The linked account identifier. 2883 LinkedAccountId int `json:"linkedAccountId"` 2884 // The data polling interval in seconds. 2885 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2886 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 2887 TagKey string `json:"tagKey,omitempty"` 2888 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 2889 TagValue string `json:"tagValue,omitempty"` 2890 } 2891 2892 // CloudCloudtrailIntegration - CloudTrail Integration 2893 type CloudCloudtrailIntegration struct { 2894 // Specify each AWS region that includes the resources that you want to monitor. 2895 AwsRegions []string `json:"awsRegions,omitempty"` 2896 // The object creation date, in epoch (Unix) time 2897 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 2898 // The cloud service integration identifier. 2899 ID int `json:"id,omitempty"` 2900 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2901 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2902 // The parent linked account identifier. 2903 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 2904 // The data polling interval in seconds. 2905 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2906 // The cloud service integration name. 2907 Name string `json:"name,omitempty"` 2908 // The parent NewRelic account identifier. 2909 NrAccountId int `json:"nrAccountId"` 2910 // The cloud service used in the integration. 2911 Service CloudService `json:"service,omitempty"` 2912 // The object last update date, in epoch (Unix) time 2913 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 2914 } 2915 2916 func (x *CloudCloudtrailIntegration) ImplementsCloudIntegration() {} 2917 2918 // CloudCloudtrailIntegrationInput - AWS CloudTrail 2919 type CloudCloudtrailIntegrationInput struct { 2920 // Specify each AWS region that includes the resources that you want to monitor. 2921 AwsRegions []string `json:"awsRegions,omitempty"` 2922 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 2923 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 2924 // The linked account identifier. 2925 LinkedAccountId int `json:"linkedAccountId"` 2926 // The data polling interval in seconds. 2927 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 2928 } 2929 2930 // CloudConfigureIntegrationPayload - Autogenerated return type of ConfigureIntegration 2931 type CloudConfigureIntegrationPayload struct { 2932 // The list of errors. 2933 Errors []CloudIntegrationMutationError `json:"errors"` 2934 // The created/modified service integrations. 2935 Integrations []CloudIntegrationInterface `json:"integrations"` 2936 } 2937 2938 // special 2939 func (x *CloudConfigureIntegrationPayload) UnmarshalJSON(b []byte) error { 2940 var objMap map[string]*json.RawMessage 2941 err := json.Unmarshal(b, &objMap) 2942 if err != nil { 2943 return err 2944 } 2945 2946 for k, v := range objMap { 2947 if v == nil { 2948 continue 2949 } 2950 2951 switch k { 2952 case "errors": 2953 err = json.Unmarshal(*v, &x.Errors) 2954 if err != nil { 2955 return err 2956 } 2957 case "integrations": 2958 if v == nil { 2959 continue 2960 } 2961 var rawMessageIntegrations []*json.RawMessage 2962 err = json.Unmarshal(*v, &rawMessageIntegrations) 2963 if err != nil { 2964 return err 2965 } 2966 2967 for _, m := range rawMessageIntegrations { 2968 xxx, err := UnmarshalCloudIntegrationInterface(*m) 2969 if err != nil { 2970 return err 2971 } 2972 2973 if xxx != nil { 2974 x.Integrations = append(x.Integrations, *xxx) 2975 } 2976 } 2977 } 2978 } 2979 2980 return nil 2981 } 2982 2983 // CloudDisableAccountIntegrationInput - Information required to disable a cloud service integration from a linked account. 2984 type CloudDisableAccountIntegrationInput struct { 2985 // The linked account identifier 2986 LinkedAccountId int `json:"linkedAccountId"` 2987 } 2988 2989 // CloudDisableIntegrationPayload - Autogenerated return type of DisableIntegration 2990 type CloudDisableIntegrationPayload struct { 2991 // The list of disabled cloud service integrations. 2992 DisabledIntegrations []CloudIntegrationInterface `json:"disabledIntegrations"` 2993 // The list of errors. 2994 Errors []CloudIntegrationMutationError `json:"errors"` 2995 } 2996 2997 // special 2998 func (x *CloudDisableIntegrationPayload) UnmarshalJSON(b []byte) error { 2999 var objMap map[string]*json.RawMessage 3000 err := json.Unmarshal(b, &objMap) 3001 if err != nil { 3002 return err 3003 } 3004 3005 for k, v := range objMap { 3006 if v == nil { 3007 continue 3008 } 3009 3010 switch k { 3011 case "disabledIntegrations": 3012 if v == nil { 3013 continue 3014 } 3015 var rawMessageDisabledIntegrations []*json.RawMessage 3016 err = json.Unmarshal(*v, &rawMessageDisabledIntegrations) 3017 if err != nil { 3018 return err 3019 } 3020 3021 for _, m := range rawMessageDisabledIntegrations { 3022 xxx, err := UnmarshalCloudIntegrationInterface(*m) 3023 if err != nil { 3024 return err 3025 } 3026 3027 if xxx != nil { 3028 x.DisabledIntegrations = append(x.DisabledIntegrations, *xxx) 3029 } 3030 } 3031 case "errors": 3032 err = json.Unmarshal(*v, &x.Errors) 3033 if err != nil { 3034 return err 3035 } 3036 } 3037 } 3038 3039 return nil 3040 } 3041 3042 // CloudDisableIntegrationsInput - List of providers 3043 type CloudDisableIntegrationsInput struct { 3044 // Aws provider 3045 Aws CloudAwsDisableIntegrationsInput `json:"aws,omitempty"` 3046 // AwsGovcloud provider 3047 AwsGovcloud CloudAwsGovcloudDisableIntegrationsInput `json:"awsGovcloud,omitempty"` 3048 // Azure provider 3049 Azure CloudAzureDisableIntegrationsInput `json:"azure,omitempty"` 3050 // Gcp provider 3051 Gcp CloudGcpDisableIntegrationsInput `json:"gcp,omitempty"` 3052 } 3053 3054 // CloudDynamodbIntegration - DynamoDB Integration 3055 type CloudDynamodbIntegration struct { 3056 // Specify each AWS region that includes the resources that you want to monitor. 3057 AwsRegions []string `json:"awsRegions,omitempty"` 3058 // The object creation date, in epoch (Unix) time 3059 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3060 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3061 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3062 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3063 FetchTags bool `json:"fetchTags,omitempty"` 3064 // The cloud service integration identifier. 3065 ID int `json:"id,omitempty"` 3066 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3067 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3068 // The parent linked account identifier. 3069 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3070 // The data polling interval in seconds. 3071 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3072 // The cloud service integration name. 3073 Name string `json:"name,omitempty"` 3074 // The parent NewRelic account identifier. 3075 NrAccountId int `json:"nrAccountId"` 3076 // The cloud service used in the integration. 3077 Service CloudService `json:"service,omitempty"` 3078 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3079 TagKey string `json:"tagKey,omitempty"` 3080 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3081 TagValue string `json:"tagValue,omitempty"` 3082 // The object last update date, in epoch (Unix) time 3083 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3084 } 3085 3086 func (x *CloudDynamodbIntegration) ImplementsCloudIntegration() {} 3087 3088 // CloudDynamodbIntegrationInput - Amazon DynamoDB 3089 type CloudDynamodbIntegrationInput struct { 3090 // Specify each AWS region that includes the resources that you want to monitor. 3091 AwsRegions []string `json:"awsRegions,omitempty"` 3092 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3093 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3094 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3095 FetchTags bool `json:"fetchTags,omitempty"` 3096 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3097 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3098 // The linked account identifier. 3099 LinkedAccountId int `json:"linkedAccountId"` 3100 // The data polling interval in seconds. 3101 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3102 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3103 TagKey string `json:"tagKey,omitempty"` 3104 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3105 TagValue string `json:"tagValue,omitempty"` 3106 } 3107 3108 // CloudEbsIntegration - EBS Integration 3109 type CloudEbsIntegration struct { 3110 // Specify each AWS region that includes the resources that you want to monitor. 3111 AwsRegions []string `json:"awsRegions,omitempty"` 3112 // The object creation date, in epoch (Unix) time 3113 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3114 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3115 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3116 // The cloud service integration identifier. 3117 ID int `json:"id,omitempty"` 3118 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3119 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3120 // The parent linked account identifier. 3121 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3122 // The data polling interval in seconds. 3123 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3124 // The cloud service integration name. 3125 Name string `json:"name,omitempty"` 3126 // The parent NewRelic account identifier. 3127 NrAccountId int `json:"nrAccountId"` 3128 // The cloud service used in the integration. 3129 Service CloudService `json:"service,omitempty"` 3130 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3131 TagKey string `json:"tagKey,omitempty"` 3132 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3133 TagValue string `json:"tagValue,omitempty"` 3134 // The object last update date, in epoch (Unix) time 3135 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3136 } 3137 3138 func (x *CloudEbsIntegration) ImplementsCloudIntegration() {} 3139 3140 // CloudEbsIntegrationInput - Amazon Elastic Block Store (EBS) 3141 type CloudEbsIntegrationInput struct { 3142 // Specify each AWS region that includes the resources that you want to monitor. 3143 AwsRegions []string `json:"awsRegions,omitempty"` 3144 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3145 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3146 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3147 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3148 // The linked account identifier. 3149 LinkedAccountId int `json:"linkedAccountId"` 3150 // The data polling interval in seconds. 3151 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3152 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3153 TagKey string `json:"tagKey,omitempty"` 3154 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3155 TagValue string `json:"tagValue,omitempty"` 3156 } 3157 3158 // CloudEc2Integration - EC2 Integration 3159 type CloudEc2Integration struct { 3160 // Specify each AWS region that includes the resources that you want to monitor. 3161 AwsRegions []string `json:"awsRegions,omitempty"` 3162 // The object creation date, in epoch (Unix) time 3163 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3164 // Specify if IP addresses of ec2 instance should be collected 3165 FetchIpAddresses bool `json:"fetchIpAddresses,omitempty"` 3166 // The cloud service integration identifier. 3167 ID int `json:"id,omitempty"` 3168 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3169 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3170 // The parent linked account identifier. 3171 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3172 // The data polling interval in seconds. 3173 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3174 // The cloud service integration name. 3175 Name string `json:"name,omitempty"` 3176 // The parent NewRelic account identifier. 3177 NrAccountId int `json:"nrAccountId"` 3178 // The cloud service used in the integration. 3179 Service CloudService `json:"service,omitempty"` 3180 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3181 TagKey string `json:"tagKey,omitempty"` 3182 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3183 TagValue string `json:"tagValue,omitempty"` 3184 // The object last update date, in epoch (Unix) time 3185 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3186 } 3187 3188 func (x *CloudEc2Integration) ImplementsCloudIntegration() {} 3189 3190 // CloudEc2IntegrationInput - Amazon Elastic Compute Cloud (EC2) 3191 type CloudEc2IntegrationInput struct { 3192 // Specify each AWS region that includes the resources that you want to monitor. 3193 AwsRegions []string `json:"awsRegions,omitempty"` 3194 // Specify if IP addresses of ec2 instance should be collected 3195 FetchIpAddresses bool `json:"fetchIpAddresses,omitempty"` 3196 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3197 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3198 // The linked account identifier. 3199 LinkedAccountId int `json:"linkedAccountId"` 3200 // The data polling interval in seconds. 3201 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3202 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3203 TagKey string `json:"tagKey,omitempty"` 3204 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3205 TagValue string `json:"tagValue,omitempty"` 3206 } 3207 3208 // CloudEcsIntegration - ECS Integration 3209 type CloudEcsIntegration struct { 3210 // Specify each AWS region that includes the resources that you want to monitor. 3211 AwsRegions []string `json:"awsRegions,omitempty"` 3212 // The object creation date, in epoch (Unix) time 3213 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3214 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3215 FetchTags bool `json:"fetchTags,omitempty"` 3216 // The cloud service integration identifier. 3217 ID int `json:"id,omitempty"` 3218 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3219 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3220 // The parent linked account identifier. 3221 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3222 // The data polling interval in seconds. 3223 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3224 // The cloud service integration name. 3225 Name string `json:"name,omitempty"` 3226 // The parent NewRelic account identifier. 3227 NrAccountId int `json:"nrAccountId"` 3228 // The cloud service used in the integration. 3229 Service CloudService `json:"service,omitempty"` 3230 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3231 TagKey string `json:"tagKey,omitempty"` 3232 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3233 TagValue string `json:"tagValue,omitempty"` 3234 // The object last update date, in epoch (Unix) time 3235 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3236 } 3237 3238 func (x *CloudEcsIntegration) ImplementsCloudIntegration() {} 3239 3240 // CloudEcsIntegrationInput - Amazon Elastic Container Service (ECS) 3241 type CloudEcsIntegrationInput struct { 3242 // Specify each AWS region that includes the resources that you want to monitor. 3243 AwsRegions []string `json:"awsRegions,omitempty"` 3244 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3245 FetchTags bool `json:"fetchTags,omitempty"` 3246 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3247 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3248 // The linked account identifier. 3249 LinkedAccountId int `json:"linkedAccountId"` 3250 // The data polling interval in seconds. 3251 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3252 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3253 TagKey string `json:"tagKey,omitempty"` 3254 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3255 TagValue string `json:"tagValue,omitempty"` 3256 } 3257 3258 // CloudEfsIntegration - EFS Integration 3259 type CloudEfsIntegration struct { 3260 // Specify each AWS region that includes the resources that you want to monitor. 3261 AwsRegions []string `json:"awsRegions,omitempty"` 3262 // The object creation date, in epoch (Unix) time 3263 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3264 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3265 FetchTags bool `json:"fetchTags,omitempty"` 3266 // The cloud service integration identifier. 3267 ID int `json:"id,omitempty"` 3268 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3269 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3270 // The parent linked account identifier. 3271 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3272 // The data polling interval in seconds. 3273 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3274 // The cloud service integration name. 3275 Name string `json:"name,omitempty"` 3276 // The parent NewRelic account identifier. 3277 NrAccountId int `json:"nrAccountId"` 3278 // The cloud service used in the integration. 3279 Service CloudService `json:"service,omitempty"` 3280 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3281 TagKey string `json:"tagKey,omitempty"` 3282 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3283 TagValue string `json:"tagValue,omitempty"` 3284 // The object last update date, in epoch (Unix) time 3285 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3286 } 3287 3288 func (x *CloudEfsIntegration) ImplementsCloudIntegration() {} 3289 3290 // CloudEfsIntegrationInput - Amazon Elastic File System (EFS) 3291 type CloudEfsIntegrationInput struct { 3292 // Specify each AWS region that includes the resources that you want to monitor. 3293 AwsRegions []string `json:"awsRegions,omitempty"` 3294 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3295 FetchTags bool `json:"fetchTags,omitempty"` 3296 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3297 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3298 // The linked account identifier. 3299 LinkedAccountId int `json:"linkedAccountId"` 3300 // The data polling interval in seconds. 3301 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3302 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3303 TagKey string `json:"tagKey,omitempty"` 3304 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3305 TagValue string `json:"tagValue,omitempty"` 3306 } 3307 3308 // CloudElasticacheIntegration - ElastiCache Integration 3309 type CloudElasticacheIntegration struct { 3310 // Specify each AWS region that includes the resources that you want to monitor. 3311 AwsRegions []string `json:"awsRegions,omitempty"` 3312 // The object creation date, in epoch (Unix) time 3313 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3314 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3315 FetchTags bool `json:"fetchTags,omitempty"` 3316 // The cloud service integration identifier. 3317 ID int `json:"id,omitempty"` 3318 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3319 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3320 // The parent linked account identifier. 3321 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3322 // The data polling interval in seconds. 3323 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3324 // The cloud service integration name. 3325 Name string `json:"name,omitempty"` 3326 // The parent NewRelic account identifier. 3327 NrAccountId int `json:"nrAccountId"` 3328 // The cloud service used in the integration. 3329 Service CloudService `json:"service,omitempty"` 3330 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3331 TagKey string `json:"tagKey,omitempty"` 3332 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3333 TagValue string `json:"tagValue,omitempty"` 3334 // The object last update date, in epoch (Unix) time 3335 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3336 } 3337 3338 func (x *CloudElasticacheIntegration) ImplementsCloudIntegration() {} 3339 3340 // CloudElasticacheIntegrationInput - Amazon ElastiCache 3341 type CloudElasticacheIntegrationInput struct { 3342 // Specify each AWS region that includes the resources that you want to monitor. 3343 AwsRegions []string `json:"awsRegions,omitempty"` 3344 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3345 FetchTags bool `json:"fetchTags,omitempty"` 3346 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3347 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3348 // The linked account identifier. 3349 LinkedAccountId int `json:"linkedAccountId"` 3350 // The data polling interval in seconds. 3351 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3352 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3353 TagKey string `json:"tagKey,omitempty"` 3354 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3355 TagValue string `json:"tagValue,omitempty"` 3356 } 3357 3358 // CloudElasticbeanstalkIntegration - Elastic Beanstalk Integration 3359 type CloudElasticbeanstalkIntegration struct { 3360 // Specify each AWS region that includes the resources that you want to monitor. 3361 AwsRegions []string `json:"awsRegions,omitempty"` 3362 // The object creation date, in epoch (Unix) time 3363 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3364 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3365 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3366 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3367 FetchTags bool `json:"fetchTags,omitempty"` 3368 // The cloud service integration identifier. 3369 ID int `json:"id,omitempty"` 3370 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3371 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3372 // The parent linked account identifier. 3373 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3374 // The data polling interval in seconds. 3375 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3376 // The cloud service integration name. 3377 Name string `json:"name,omitempty"` 3378 // The parent NewRelic account identifier. 3379 NrAccountId int `json:"nrAccountId"` 3380 // The cloud service used in the integration. 3381 Service CloudService `json:"service,omitempty"` 3382 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3383 TagKey string `json:"tagKey,omitempty"` 3384 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3385 TagValue string `json:"tagValue,omitempty"` 3386 // The object last update date, in epoch (Unix) time 3387 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3388 } 3389 3390 func (x *CloudElasticbeanstalkIntegration) ImplementsCloudIntegration() {} 3391 3392 // CloudElasticbeanstalkIntegrationInput - AWS Elastic Beanstalk 3393 type CloudElasticbeanstalkIntegrationInput struct { 3394 // Specify each AWS region that includes the resources that you want to monitor. 3395 AwsRegions []string `json:"awsRegions,omitempty"` 3396 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3397 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3398 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3399 FetchTags bool `json:"fetchTags,omitempty"` 3400 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3401 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3402 // The linked account identifier. 3403 LinkedAccountId int `json:"linkedAccountId"` 3404 // The data polling interval in seconds. 3405 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3406 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3407 TagKey string `json:"tagKey,omitempty"` 3408 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3409 TagValue string `json:"tagValue,omitempty"` 3410 } 3411 3412 // CloudElasticsearchIntegration - Elasticsearch Service Integration 3413 type CloudElasticsearchIntegration struct { 3414 // Specify each AWS region that includes the resources that you want to monitor. 3415 AwsRegions []string `json:"awsRegions,omitempty"` 3416 // The object creation date, in epoch (Unix) time 3417 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3418 // Specify if metrics should be collected for nodes. Turning it on will increase the number of API calls made to CloudWatch. 3419 FetchNodes bool `json:"fetchNodes,omitempty"` 3420 // The cloud service integration identifier. 3421 ID int `json:"id,omitempty"` 3422 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3423 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3424 // The parent linked account identifier. 3425 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3426 // The data polling interval in seconds. 3427 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3428 // The cloud service integration name. 3429 Name string `json:"name,omitempty"` 3430 // The parent NewRelic account identifier. 3431 NrAccountId int `json:"nrAccountId"` 3432 // The cloud service used in the integration. 3433 Service CloudService `json:"service,omitempty"` 3434 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3435 TagKey string `json:"tagKey,omitempty"` 3436 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3437 TagValue string `json:"tagValue,omitempty"` 3438 // The object last update date, in epoch (Unix) time 3439 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3440 } 3441 3442 func (x *CloudElasticsearchIntegration) ImplementsCloudIntegration() {} 3443 3444 // CloudElasticsearchIntegrationInput - Amazon Elasticsearch Service 3445 type CloudElasticsearchIntegrationInput struct { 3446 // Specify each AWS region that includes the resources that you want to monitor. 3447 AwsRegions []string `json:"awsRegions,omitempty"` 3448 // Specify if metrics should be collected for nodes. Turning it on will increase the number of API calls made to CloudWatch. 3449 FetchNodes bool `json:"fetchNodes,omitempty"` 3450 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3451 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3452 // The linked account identifier. 3453 LinkedAccountId int `json:"linkedAccountId"` 3454 // The data polling interval in seconds. 3455 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3456 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3457 TagKey string `json:"tagKey,omitempty"` 3458 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3459 TagValue string `json:"tagValue,omitempty"` 3460 } 3461 3462 // CloudElbIntegration - ELB (Classic) Integration 3463 type CloudElbIntegration struct { 3464 // Specify each AWS region that includes the resources that you want to monitor. 3465 AwsRegions []string `json:"awsRegions,omitempty"` 3466 // The object creation date, in epoch (Unix) time 3467 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3468 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3469 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3470 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3471 FetchTags bool `json:"fetchTags,omitempty"` 3472 // The cloud service integration identifier. 3473 ID int `json:"id,omitempty"` 3474 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3475 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3476 // The parent linked account identifier. 3477 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3478 // The data polling interval in seconds. 3479 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3480 // The cloud service integration name. 3481 Name string `json:"name,omitempty"` 3482 // The parent NewRelic account identifier. 3483 NrAccountId int `json:"nrAccountId"` 3484 // The cloud service used in the integration. 3485 Service CloudService `json:"service,omitempty"` 3486 // The object last update date, in epoch (Unix) time 3487 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3488 } 3489 3490 func (x *CloudElbIntegration) ImplementsCloudIntegration() {} 3491 3492 // CloudElbIntegrationInput - Elastic Load Balancing - Classic Load Balancer (ELB) 3493 type CloudElbIntegrationInput struct { 3494 // Specify each AWS region that includes the resources that you want to monitor. 3495 AwsRegions []string `json:"awsRegions,omitempty"` 3496 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 3497 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 3498 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3499 FetchTags bool `json:"fetchTags,omitempty"` 3500 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3501 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3502 // The linked account identifier. 3503 LinkedAccountId int `json:"linkedAccountId"` 3504 // The data polling interval in seconds. 3505 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3506 } 3507 3508 // CloudEmrIntegration - EMR Integration 3509 type CloudEmrIntegration struct { 3510 // Specify each AWS region that includes the resources that you want to monitor. 3511 AwsRegions []string `json:"awsRegions,omitempty"` 3512 // The object creation date, in epoch (Unix) time 3513 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3514 // Specify if tags and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3515 FetchTags bool `json:"fetchTags,omitempty"` 3516 // The cloud service integration identifier. 3517 ID int `json:"id,omitempty"` 3518 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3519 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3520 // The parent linked account identifier. 3521 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3522 // The data polling interval in seconds. 3523 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3524 // The cloud service integration name. 3525 Name string `json:"name,omitempty"` 3526 // The parent NewRelic account identifier. 3527 NrAccountId int `json:"nrAccountId"` 3528 // The cloud service used in the integration. 3529 Service CloudService `json:"service,omitempty"` 3530 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3531 TagKey string `json:"tagKey,omitempty"` 3532 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3533 TagValue string `json:"tagValue,omitempty"` 3534 // The object last update date, in epoch (Unix) time 3535 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3536 } 3537 3538 func (x *CloudEmrIntegration) ImplementsCloudIntegration() {} 3539 3540 // CloudEmrIntegrationInput - Amazon Elastic MapReduce (EMR) 3541 type CloudEmrIntegrationInput struct { 3542 // Specify each AWS region that includes the resources that you want to monitor. 3543 AwsRegions []string `json:"awsRegions,omitempty"` 3544 // Specify if tags and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3545 FetchTags bool `json:"fetchTags,omitempty"` 3546 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3547 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3548 // The linked account identifier. 3549 LinkedAccountId int `json:"linkedAccountId"` 3550 // The data polling interval in seconds. 3551 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3552 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 3553 TagKey string `json:"tagKey,omitempty"` 3554 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 3555 TagValue string `json:"tagValue,omitempty"` 3556 } 3557 3558 // CloudGcpAppengineIntegration - App Engine Integration 3559 type CloudGcpAppengineIntegration struct { 3560 // The object creation date, in epoch (Unix) time 3561 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3562 // The cloud service integration identifier. 3563 ID int `json:"id,omitempty"` 3564 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3565 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3566 // The parent linked account identifier. 3567 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3568 // The data polling interval in seconds. 3569 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3570 // The cloud service integration name. 3571 Name string `json:"name,omitempty"` 3572 // The parent NewRelic account identifier. 3573 NrAccountId int `json:"nrAccountId"` 3574 // The cloud service used in the integration. 3575 Service CloudService `json:"service,omitempty"` 3576 // The object last update date, in epoch (Unix) time 3577 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3578 } 3579 3580 func (x *CloudGcpAppengineIntegration) ImplementsCloudIntegration() {} 3581 3582 // CloudGcpAppengineIntegrationInput - Google App Engine 3583 type CloudGcpAppengineIntegrationInput struct { 3584 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3585 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3586 // The linked account identifier. 3587 LinkedAccountId int `json:"linkedAccountId"` 3588 // The data polling interval in seconds. 3589 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3590 } 3591 3592 // CloudGcpBigqueryIntegration - BigQuery Integration 3593 type CloudGcpBigqueryIntegration struct { 3594 // The object creation date, in epoch (Unix) time 3595 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3596 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3597 FetchTags bool `json:"fetchTags,omitempty"` 3598 // The cloud service integration identifier. 3599 ID int `json:"id,omitempty"` 3600 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3601 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3602 // The parent linked account identifier. 3603 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3604 // The data polling interval in seconds. 3605 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3606 // The cloud service integration name. 3607 Name string `json:"name,omitempty"` 3608 // The parent NewRelic account identifier. 3609 NrAccountId int `json:"nrAccountId"` 3610 // The cloud service used in the integration. 3611 Service CloudService `json:"service,omitempty"` 3612 // The object last update date, in epoch (Unix) time 3613 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3614 } 3615 3616 func (x *CloudGcpBigqueryIntegration) ImplementsCloudIntegration() {} 3617 3618 // CloudGcpBigqueryIntegrationInput - BigQuery 3619 type CloudGcpBigqueryIntegrationInput struct { 3620 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 3621 FetchTags bool `json:"fetchTags,omitempty"` 3622 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3623 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3624 // The linked account identifier. 3625 LinkedAccountId int `json:"linkedAccountId"` 3626 // The data polling interval in seconds. 3627 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3628 } 3629 3630 // CloudGcpBigtableIntegration - Bigtable Integration 3631 type CloudGcpBigtableIntegration struct { 3632 // The object creation date, in epoch (Unix) time 3633 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3634 // The cloud service integration identifier. 3635 ID int `json:"id,omitempty"` 3636 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3637 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3638 // The parent linked account identifier. 3639 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3640 // The data polling interval in seconds. 3641 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3642 // The cloud service integration name. 3643 Name string `json:"name,omitempty"` 3644 // The parent NewRelic account identifier. 3645 NrAccountId int `json:"nrAccountId"` 3646 // The cloud service used in the integration. 3647 Service CloudService `json:"service,omitempty"` 3648 // The object last update date, in epoch (Unix) time 3649 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3650 } 3651 3652 func (x *CloudGcpBigtableIntegration) ImplementsCloudIntegration() {} 3653 3654 // CloudGcpBigtableIntegrationInput - Bigtable 3655 type CloudGcpBigtableIntegrationInput struct { 3656 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3657 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3658 // The linked account identifier. 3659 LinkedAccountId int `json:"linkedAccountId"` 3660 // The data polling interval in seconds. 3661 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3662 } 3663 3664 // CloudGcpComposerIntegration - Composer Integration 3665 type CloudGcpComposerIntegration struct { 3666 // The object creation date, in epoch (Unix) time 3667 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3668 // The cloud service integration identifier. 3669 ID int `json:"id,omitempty"` 3670 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3671 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3672 // The parent linked account identifier. 3673 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3674 // The data polling interval in seconds. 3675 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3676 // The cloud service integration name. 3677 Name string `json:"name,omitempty"` 3678 // The parent NewRelic account identifier. 3679 NrAccountId int `json:"nrAccountId"` 3680 // The cloud service used in the integration. 3681 Service CloudService `json:"service,omitempty"` 3682 // The object last update date, in epoch (Unix) time 3683 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3684 } 3685 3686 func (x *CloudGcpComposerIntegration) ImplementsCloudIntegration() {} 3687 3688 // CloudGcpComposerIntegrationInput - Composer 3689 type CloudGcpComposerIntegrationInput struct { 3690 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3691 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3692 // The linked account identifier. 3693 LinkedAccountId int `json:"linkedAccountId"` 3694 // The data polling interval in seconds. 3695 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3696 } 3697 3698 // CloudGcpDataflowIntegration - Dataflow Integration 3699 type CloudGcpDataflowIntegration struct { 3700 // The object creation date, in epoch (Unix) time 3701 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3702 // The cloud service integration identifier. 3703 ID int `json:"id,omitempty"` 3704 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3705 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3706 // The parent linked account identifier. 3707 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3708 // The data polling interval in seconds. 3709 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3710 // The cloud service integration name. 3711 Name string `json:"name,omitempty"` 3712 // The parent NewRelic account identifier. 3713 NrAccountId int `json:"nrAccountId"` 3714 // The cloud service used in the integration. 3715 Service CloudService `json:"service,omitempty"` 3716 // The object last update date, in epoch (Unix) time 3717 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3718 } 3719 3720 func (x *CloudGcpDataflowIntegration) ImplementsCloudIntegration() {} 3721 3722 // CloudGcpDataflowIntegrationInput - Dataflow 3723 type CloudGcpDataflowIntegrationInput struct { 3724 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3725 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3726 // The linked account identifier. 3727 LinkedAccountId int `json:"linkedAccountId"` 3728 // The data polling interval in seconds. 3729 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3730 } 3731 3732 // CloudGcpDataprocIntegration - Dataproc Integration 3733 type CloudGcpDataprocIntegration struct { 3734 // The object creation date, in epoch (Unix) time 3735 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3736 // The cloud service integration identifier. 3737 ID int `json:"id,omitempty"` 3738 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3739 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3740 // The parent linked account identifier. 3741 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3742 // The data polling interval in seconds. 3743 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3744 // The cloud service integration name. 3745 Name string `json:"name,omitempty"` 3746 // The parent NewRelic account identifier. 3747 NrAccountId int `json:"nrAccountId"` 3748 // The cloud service used in the integration. 3749 Service CloudService `json:"service,omitempty"` 3750 // The object last update date, in epoch (Unix) time 3751 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3752 } 3753 3754 func (x *CloudGcpDataprocIntegration) ImplementsCloudIntegration() {} 3755 3756 // CloudGcpDataprocIntegrationInput - Dataproc 3757 type CloudGcpDataprocIntegrationInput struct { 3758 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3759 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3760 // The linked account identifier. 3761 LinkedAccountId int `json:"linkedAccountId"` 3762 // The data polling interval in seconds. 3763 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3764 } 3765 3766 // CloudGcpDatastoreIntegration - Datastore Integration 3767 type CloudGcpDatastoreIntegration struct { 3768 // The object creation date, in epoch (Unix) time 3769 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3770 // The cloud service integration identifier. 3771 ID int `json:"id,omitempty"` 3772 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3773 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3774 // The parent linked account identifier. 3775 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3776 // The data polling interval in seconds. 3777 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3778 // The cloud service integration name. 3779 Name string `json:"name,omitempty"` 3780 // The parent NewRelic account identifier. 3781 NrAccountId int `json:"nrAccountId"` 3782 // The cloud service used in the integration. 3783 Service CloudService `json:"service,omitempty"` 3784 // The object last update date, in epoch (Unix) time 3785 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3786 } 3787 3788 func (x *CloudGcpDatastoreIntegration) ImplementsCloudIntegration() {} 3789 3790 // CloudGcpDatastoreIntegrationInput - Datastore 3791 type CloudGcpDatastoreIntegrationInput struct { 3792 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3793 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3794 // The linked account identifier. 3795 LinkedAccountId int `json:"linkedAccountId"` 3796 // The data polling interval in seconds. 3797 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3798 } 3799 3800 // CloudGcpDisableIntegrationsInput - List of integrations 3801 type CloudGcpDisableIntegrationsInput struct { 3802 // App Engine integration 3803 GcpAppengine []CloudDisableAccountIntegrationInput `json:"gcpAppengine,omitempty"` 3804 // BigQuery integration 3805 GcpBigquery []CloudDisableAccountIntegrationInput `json:"gcpBigquery,omitempty"` 3806 // Bigtable integration 3807 GcpBigtable []CloudDisableAccountIntegrationInput `json:"gcpBigtable,omitempty"` 3808 // Composer integration 3809 GcpComposer []CloudDisableAccountIntegrationInput `json:"gcpComposer,omitempty"` 3810 // Dataflow integration 3811 GcpDataflow []CloudDisableAccountIntegrationInput `json:"gcpDataflow,omitempty"` 3812 // Dataproc integration 3813 GcpDataproc []CloudDisableAccountIntegrationInput `json:"gcpDataproc,omitempty"` 3814 // Datastore integration 3815 GcpDatastore []CloudDisableAccountIntegrationInput `json:"gcpDatastore,omitempty"` 3816 // Firebase Database integration 3817 GcpFirebasedatabase []CloudDisableAccountIntegrationInput `json:"gcpFirebasedatabase,omitempty"` 3818 // Firebase Hosting integration 3819 GcpFirebasehosting []CloudDisableAccountIntegrationInput `json:"gcpFirebasehosting,omitempty"` 3820 // Firebase Storage integration 3821 GcpFirebasestorage []CloudDisableAccountIntegrationInput `json:"gcpFirebasestorage,omitempty"` 3822 // Firestore integration 3823 GcpFirestore []CloudDisableAccountIntegrationInput `json:"gcpFirestore,omitempty"` 3824 // Cloud Functions integration 3825 GcpFunctions []CloudDisableAccountIntegrationInput `json:"gcpFunctions,omitempty"` 3826 // Interconnect integration 3827 GcpInterconnect []CloudDisableAccountIntegrationInput `json:"gcpInterconnect,omitempty"` 3828 // Kubernetes Engine integration 3829 GcpKubernetes []CloudDisableAccountIntegrationInput `json:"gcpKubernetes,omitempty"` 3830 // Cloud Load Balancing integration 3831 GcpLoadbalancing []CloudDisableAccountIntegrationInput `json:"gcpLoadbalancing,omitempty"` 3832 // Memcache integration 3833 GcpMemcache []CloudDisableAccountIntegrationInput `json:"gcpMemcache,omitempty"` 3834 // Cloud Pub/Sub integration 3835 GcpPubsub []CloudDisableAccountIntegrationInput `json:"gcpPubsub,omitempty"` 3836 // Redis integration 3837 GcpRedis []CloudDisableAccountIntegrationInput `json:"gcpRedis,omitempty"` 3838 // Router integration 3839 GcpRouter []CloudDisableAccountIntegrationInput `json:"gcpRouter,omitempty"` 3840 // Run integration 3841 GcpRun []CloudDisableAccountIntegrationInput `json:"gcpRun,omitempty"` 3842 // Cloud Spanner integration 3843 GcpSpanner []CloudDisableAccountIntegrationInput `json:"gcpSpanner,omitempty"` 3844 // Cloud SQL integration 3845 GcpSql []CloudDisableAccountIntegrationInput `json:"gcpSql,omitempty"` 3846 // Cloud Storage integration 3847 GcpStorage []CloudDisableAccountIntegrationInput `json:"gcpStorage,omitempty"` 3848 // Compute Engine integration 3849 GcpVms []CloudDisableAccountIntegrationInput `json:"gcpVms,omitempty"` 3850 // VPC Access integration 3851 GcpVpcaccess []CloudDisableAccountIntegrationInput `json:"gcpVpcaccess,omitempty"` 3852 } 3853 3854 // CloudGcpFirebasedatabaseIntegration - Firebase Database Integration 3855 type CloudGcpFirebasedatabaseIntegration struct { 3856 // The object creation date, in epoch (Unix) time 3857 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3858 // The cloud service integration identifier. 3859 ID int `json:"id,omitempty"` 3860 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3861 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3862 // The parent linked account identifier. 3863 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3864 // The data polling interval in seconds. 3865 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3866 // The cloud service integration name. 3867 Name string `json:"name,omitempty"` 3868 // The parent NewRelic account identifier. 3869 NrAccountId int `json:"nrAccountId"` 3870 // The cloud service used in the integration. 3871 Service CloudService `json:"service,omitempty"` 3872 // The object last update date, in epoch (Unix) time 3873 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3874 } 3875 3876 func (x *CloudGcpFirebasedatabaseIntegration) ImplementsCloudIntegration() {} 3877 3878 // CloudGcpFirebasedatabaseIntegrationInput - Firebase Database 3879 type CloudGcpFirebasedatabaseIntegrationInput struct { 3880 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3881 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3882 // The linked account identifier. 3883 LinkedAccountId int `json:"linkedAccountId"` 3884 // The data polling interval in seconds. 3885 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3886 } 3887 3888 // CloudGcpFirebasehostingIntegration - Firebase Hosting Integration 3889 type CloudGcpFirebasehostingIntegration struct { 3890 // The object creation date, in epoch (Unix) time 3891 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3892 // The cloud service integration identifier. 3893 ID int `json:"id,omitempty"` 3894 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3895 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3896 // The parent linked account identifier. 3897 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3898 // The data polling interval in seconds. 3899 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3900 // The cloud service integration name. 3901 Name string `json:"name,omitempty"` 3902 // The parent NewRelic account identifier. 3903 NrAccountId int `json:"nrAccountId"` 3904 // The cloud service used in the integration. 3905 Service CloudService `json:"service,omitempty"` 3906 // The object last update date, in epoch (Unix) time 3907 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3908 } 3909 3910 func (x *CloudGcpFirebasehostingIntegration) ImplementsCloudIntegration() {} 3911 3912 // CloudGcpFirebasehostingIntegrationInput - Firebase Hosting 3913 type CloudGcpFirebasehostingIntegrationInput struct { 3914 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3915 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3916 // The linked account identifier. 3917 LinkedAccountId int `json:"linkedAccountId"` 3918 // The data polling interval in seconds. 3919 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3920 } 3921 3922 // CloudGcpFirebasestorageIntegration - Firebase Storage Integration 3923 type CloudGcpFirebasestorageIntegration struct { 3924 // The object creation date, in epoch (Unix) time 3925 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3926 // The cloud service integration identifier. 3927 ID int `json:"id,omitempty"` 3928 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3929 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3930 // The parent linked account identifier. 3931 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3932 // The data polling interval in seconds. 3933 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3934 // The cloud service integration name. 3935 Name string `json:"name,omitempty"` 3936 // The parent NewRelic account identifier. 3937 NrAccountId int `json:"nrAccountId"` 3938 // The cloud service used in the integration. 3939 Service CloudService `json:"service,omitempty"` 3940 // The object last update date, in epoch (Unix) time 3941 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3942 } 3943 3944 func (x *CloudGcpFirebasestorageIntegration) ImplementsCloudIntegration() {} 3945 3946 // CloudGcpFirebasestorageIntegrationInput - Firebase Storage 3947 type CloudGcpFirebasestorageIntegrationInput struct { 3948 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3949 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3950 // The linked account identifier. 3951 LinkedAccountId int `json:"linkedAccountId"` 3952 // The data polling interval in seconds. 3953 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3954 } 3955 3956 // CloudGcpFirestoreIntegration - Firestore Integration 3957 type CloudGcpFirestoreIntegration struct { 3958 // The object creation date, in epoch (Unix) time 3959 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3960 // The cloud service integration identifier. 3961 ID int `json:"id,omitempty"` 3962 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3963 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3964 // The parent linked account identifier. 3965 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 3966 // The data polling interval in seconds. 3967 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3968 // The cloud service integration name. 3969 Name string `json:"name,omitempty"` 3970 // The parent NewRelic account identifier. 3971 NrAccountId int `json:"nrAccountId"` 3972 // The cloud service used in the integration. 3973 Service CloudService `json:"service,omitempty"` 3974 // The object last update date, in epoch (Unix) time 3975 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 3976 } 3977 3978 func (x *CloudGcpFirestoreIntegration) ImplementsCloudIntegration() {} 3979 3980 // CloudGcpFirestoreIntegrationInput - Firestore 3981 type CloudGcpFirestoreIntegrationInput struct { 3982 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3983 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3984 // The linked account identifier. 3985 LinkedAccountId int `json:"linkedAccountId"` 3986 // The data polling interval in seconds. 3987 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 3988 } 3989 3990 // CloudGcpFunctionsIntegration - Cloud Functions Integration 3991 type CloudGcpFunctionsIntegration struct { 3992 // The object creation date, in epoch (Unix) time 3993 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 3994 // The cloud service integration identifier. 3995 ID int `json:"id,omitempty"` 3996 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 3997 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 3998 // The parent linked account identifier. 3999 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4000 // The data polling interval in seconds. 4001 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4002 // The cloud service integration name. 4003 Name string `json:"name,omitempty"` 4004 // The parent NewRelic account identifier. 4005 NrAccountId int `json:"nrAccountId"` 4006 // The cloud service used in the integration. 4007 Service CloudService `json:"service,omitempty"` 4008 // The object last update date, in epoch (Unix) time 4009 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4010 } 4011 4012 func (x *CloudGcpFunctionsIntegration) ImplementsCloudIntegration() {} 4013 4014 // CloudGcpFunctionsIntegrationInput - Google Cloud Functions 4015 type CloudGcpFunctionsIntegrationInput struct { 4016 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4017 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4018 // The linked account identifier. 4019 LinkedAccountId int `json:"linkedAccountId"` 4020 // The data polling interval in seconds. 4021 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4022 } 4023 4024 // CloudGcpIntegrationsInput - List of integrations 4025 type CloudGcpIntegrationsInput struct { 4026 // App Engine integration 4027 GcpAppengine []CloudGcpAppengineIntegrationInput `json:"gcpAppengine,omitempty"` 4028 // BigQuery integration 4029 GcpBigquery []CloudGcpBigqueryIntegrationInput `json:"gcpBigquery,omitempty"` 4030 // Bigtable integration 4031 GcpBigtable []CloudGcpBigtableIntegrationInput `json:"gcpBigtable,omitempty"` 4032 // Composer integration 4033 GcpComposer []CloudGcpComposerIntegrationInput `json:"gcpComposer,omitempty"` 4034 // Dataflow integration 4035 GcpDataflow []CloudGcpDataflowIntegrationInput `json:"gcpDataflow,omitempty"` 4036 // Dataproc integration 4037 GcpDataproc []CloudGcpDataprocIntegrationInput `json:"gcpDataproc,omitempty"` 4038 // Datastore integration 4039 GcpDatastore []CloudGcpDatastoreIntegrationInput `json:"gcpDatastore,omitempty"` 4040 // Firebase Database integration 4041 GcpFirebasedatabase []CloudGcpFirebasedatabaseIntegrationInput `json:"gcpFirebasedatabase,omitempty"` 4042 // Firebase Hosting integration 4043 GcpFirebasehosting []CloudGcpFirebasehostingIntegrationInput `json:"gcpFirebasehosting,omitempty"` 4044 // Firebase Storage integration 4045 GcpFirebasestorage []CloudGcpFirebasestorageIntegrationInput `json:"gcpFirebasestorage,omitempty"` 4046 // Firestore integration 4047 GcpFirestore []CloudGcpFirestoreIntegrationInput `json:"gcpFirestore,omitempty"` 4048 // Cloud Functions integration 4049 GcpFunctions []CloudGcpFunctionsIntegrationInput `json:"gcpFunctions,omitempty"` 4050 // Interconnect integration 4051 GcpInterconnect []CloudGcpInterconnectIntegrationInput `json:"gcpInterconnect,omitempty"` 4052 // Kubernetes Engine integration 4053 GcpKubernetes []CloudGcpKubernetesIntegrationInput `json:"gcpKubernetes,omitempty"` 4054 // Cloud Load Balancing integration 4055 GcpLoadbalancing []CloudGcpLoadbalancingIntegrationInput `json:"gcpLoadbalancing,omitempty"` 4056 // Memcache integration 4057 GcpMemcache []CloudGcpMemcacheIntegrationInput `json:"gcpMemcache,omitempty"` 4058 // Cloud Pub/Sub integration 4059 GcpPubsub []CloudGcpPubsubIntegrationInput `json:"gcpPubsub,omitempty"` 4060 // Redis integration 4061 GcpRedis []CloudGcpRedisIntegrationInput `json:"gcpRedis,omitempty"` 4062 // Router integration 4063 GcpRouter []CloudGcpRouterIntegrationInput `json:"gcpRouter,omitempty"` 4064 // Run integration 4065 GcpRun []CloudGcpRunIntegrationInput `json:"gcpRun,omitempty"` 4066 // Cloud Spanner integration 4067 GcpSpanner []CloudGcpSpannerIntegrationInput `json:"gcpSpanner,omitempty"` 4068 // Cloud SQL integration 4069 GcpSql []CloudGcpSqlIntegrationInput `json:"gcpSql,omitempty"` 4070 // Cloud Storage integration 4071 GcpStorage []CloudGcpStorageIntegrationInput `json:"gcpStorage,omitempty"` 4072 // Compute Engine integration 4073 GcpVms []CloudGcpVmsIntegrationInput `json:"gcpVms,omitempty"` 4074 // VPC Access integration 4075 GcpVpcaccess []CloudGcpVpcaccessIntegrationInput `json:"gcpVpcaccess,omitempty"` 4076 } 4077 4078 // CloudGcpInterconnectIntegration - Interconnect Integration 4079 type CloudGcpInterconnectIntegration struct { 4080 // The object creation date, in epoch (Unix) time 4081 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4082 // The cloud service integration identifier. 4083 ID int `json:"id,omitempty"` 4084 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4085 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4086 // The parent linked account identifier. 4087 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4088 // The data polling interval in seconds. 4089 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4090 // The cloud service integration name. 4091 Name string `json:"name,omitempty"` 4092 // The parent NewRelic account identifier. 4093 NrAccountId int `json:"nrAccountId"` 4094 // The cloud service used in the integration. 4095 Service CloudService `json:"service,omitempty"` 4096 // The object last update date, in epoch (Unix) time 4097 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4098 } 4099 4100 func (x *CloudGcpInterconnectIntegration) ImplementsCloudIntegration() {} 4101 4102 // CloudGcpInterconnectIntegrationInput - Interconnect 4103 type CloudGcpInterconnectIntegrationInput struct { 4104 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4105 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4106 // The linked account identifier. 4107 LinkedAccountId int `json:"linkedAccountId"` 4108 // The data polling interval in seconds. 4109 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4110 } 4111 4112 // CloudGcpKubernetesIntegration - Kubernetes Engine Integration 4113 type CloudGcpKubernetesIntegration struct { 4114 // The object creation date, in epoch (Unix) time 4115 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4116 // The cloud service integration identifier. 4117 ID int `json:"id,omitempty"` 4118 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4119 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4120 // The parent linked account identifier. 4121 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4122 // The data polling interval in seconds. 4123 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4124 // The cloud service integration name. 4125 Name string `json:"name,omitempty"` 4126 // The parent NewRelic account identifier. 4127 NrAccountId int `json:"nrAccountId"` 4128 // The cloud service used in the integration. 4129 Service CloudService `json:"service,omitempty"` 4130 // The object last update date, in epoch (Unix) time 4131 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4132 } 4133 4134 func (x *CloudGcpKubernetesIntegration) ImplementsCloudIntegration() {} 4135 4136 // CloudGcpKubernetesIntegrationInput - Google Kubernetes Engine 4137 type CloudGcpKubernetesIntegrationInput struct { 4138 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4139 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4140 // The linked account identifier. 4141 LinkedAccountId int `json:"linkedAccountId"` 4142 // The data polling interval in seconds. 4143 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4144 } 4145 4146 // CloudGcpLinkAccountInput - Information required to link a GCP account to a NewRelic account. 4147 type CloudGcpLinkAccountInput struct { 4148 // The linked account name. 4149 Name string `json:"name"` 4150 // The GCP project identifier. 4151 ProjectId string `json:"projectId"` 4152 } 4153 4154 // CloudGcpLoadbalancingIntegration - Cloud Load Balancing Integration 4155 type CloudGcpLoadbalancingIntegration struct { 4156 // The object creation date, in epoch (Unix) time 4157 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4158 // The cloud service integration identifier. 4159 ID int `json:"id,omitempty"` 4160 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4161 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4162 // The parent linked account identifier. 4163 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4164 // The data polling interval in seconds. 4165 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4166 // The cloud service integration name. 4167 Name string `json:"name,omitempty"` 4168 // The parent NewRelic account identifier. 4169 NrAccountId int `json:"nrAccountId"` 4170 // The cloud service used in the integration. 4171 Service CloudService `json:"service,omitempty"` 4172 // The object last update date, in epoch (Unix) time 4173 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4174 } 4175 4176 func (x *CloudGcpLoadbalancingIntegration) ImplementsCloudIntegration() {} 4177 4178 // CloudGcpLoadbalancingIntegrationInput - Google Cloud Load Balancing 4179 type CloudGcpLoadbalancingIntegrationInput struct { 4180 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4181 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4182 // The linked account identifier. 4183 LinkedAccountId int `json:"linkedAccountId"` 4184 // The data polling interval in seconds. 4185 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4186 } 4187 4188 // CloudGcpMemcacheIntegration - Memcache Integration 4189 type CloudGcpMemcacheIntegration struct { 4190 // The object creation date, in epoch (Unix) time 4191 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4192 // The cloud service integration identifier. 4193 ID int `json:"id,omitempty"` 4194 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4195 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4196 // The parent linked account identifier. 4197 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4198 // The data polling interval in seconds. 4199 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4200 // The cloud service integration name. 4201 Name string `json:"name,omitempty"` 4202 // The parent NewRelic account identifier. 4203 NrAccountId int `json:"nrAccountId"` 4204 // The cloud service used in the integration. 4205 Service CloudService `json:"service,omitempty"` 4206 // The object last update date, in epoch (Unix) time 4207 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4208 } 4209 4210 func (x *CloudGcpMemcacheIntegration) ImplementsCloudIntegration() {} 4211 4212 // CloudGcpMemcacheIntegrationInput - Memcache 4213 type CloudGcpMemcacheIntegrationInput struct { 4214 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4215 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4216 // The linked account identifier. 4217 LinkedAccountId int `json:"linkedAccountId"` 4218 // The data polling interval in seconds. 4219 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4220 } 4221 4222 // CloudGcpProvider - The Google Cloud Platform cloud provider 4223 type CloudGcpProvider struct { 4224 // The object creation date, in epoch (Unix) time 4225 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4226 // The cloud provider identifier in NewRelic. 4227 ID int `json:"id"` 4228 // The cloud provider icon name. 4229 Icon string `json:"icon"` 4230 // The cloud provider name. 4231 Name string `json:"name"` 4232 // Get details of one cloud provider service. 4233 Service CloudService `json:"service,omitempty"` 4234 // The service account identifier used to link the GCP project to NewRelic. 4235 ServiceAccountId string `json:"serviceAccountId"` 4236 // Get details of all the cloud provider services available for integration. 4237 Services []CloudService `json:"services"` 4238 // The cloud provider short name. 4239 Slug string `json:"slug"` 4240 // The object last update date, in epoch (Unix) time 4241 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4242 } 4243 4244 func (x *CloudGcpProvider) ImplementsCloudProvider() {} 4245 4246 // CloudGcpPubsubIntegration - Cloud Pub/Sub Integration 4247 type CloudGcpPubsubIntegration struct { 4248 // The object creation date, in epoch (Unix) time 4249 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4250 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4251 FetchTags bool `json:"fetchTags,omitempty"` 4252 // The cloud service integration identifier. 4253 ID int `json:"id,omitempty"` 4254 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4255 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4256 // The parent linked account identifier. 4257 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4258 // The data polling interval in seconds. 4259 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4260 // The cloud service integration name. 4261 Name string `json:"name,omitempty"` 4262 // The parent NewRelic account identifier. 4263 NrAccountId int `json:"nrAccountId"` 4264 // The cloud service used in the integration. 4265 Service CloudService `json:"service,omitempty"` 4266 // The object last update date, in epoch (Unix) time 4267 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4268 } 4269 4270 func (x *CloudGcpPubsubIntegration) ImplementsCloudIntegration() {} 4271 4272 // CloudGcpPubsubIntegrationInput - Cloud Pub/Sub 4273 type CloudGcpPubsubIntegrationInput struct { 4274 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4275 FetchTags bool `json:"fetchTags,omitempty"` 4276 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4277 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4278 // The linked account identifier. 4279 LinkedAccountId int `json:"linkedAccountId"` 4280 // The data polling interval in seconds. 4281 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4282 } 4283 4284 // CloudGcpRedisIntegration - Redis Integration 4285 type CloudGcpRedisIntegration struct { 4286 // The object creation date, in epoch (Unix) time 4287 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4288 // The cloud service integration identifier. 4289 ID int `json:"id,omitempty"` 4290 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4291 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4292 // The parent linked account identifier. 4293 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4294 // The data polling interval in seconds. 4295 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4296 // The cloud service integration name. 4297 Name string `json:"name,omitempty"` 4298 // The parent NewRelic account identifier. 4299 NrAccountId int `json:"nrAccountId"` 4300 // The cloud service used in the integration. 4301 Service CloudService `json:"service,omitempty"` 4302 // The object last update date, in epoch (Unix) time 4303 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4304 } 4305 4306 func (x *CloudGcpRedisIntegration) ImplementsCloudIntegration() {} 4307 4308 // CloudGcpRedisIntegrationInput - Redis 4309 type CloudGcpRedisIntegrationInput struct { 4310 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4311 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4312 // The linked account identifier. 4313 LinkedAccountId int `json:"linkedAccountId"` 4314 // The data polling interval in seconds. 4315 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4316 } 4317 4318 // CloudGcpRouterIntegration - Router Integration 4319 type CloudGcpRouterIntegration struct { 4320 // The object creation date, in epoch (Unix) time 4321 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4322 // The cloud service integration identifier. 4323 ID int `json:"id,omitempty"` 4324 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4325 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4326 // The parent linked account identifier. 4327 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4328 // The data polling interval in seconds. 4329 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4330 // The cloud service integration name. 4331 Name string `json:"name,omitempty"` 4332 // The parent NewRelic account identifier. 4333 NrAccountId int `json:"nrAccountId"` 4334 // The cloud service used in the integration. 4335 Service CloudService `json:"service,omitempty"` 4336 // The object last update date, in epoch (Unix) time 4337 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4338 } 4339 4340 func (x *CloudGcpRouterIntegration) ImplementsCloudIntegration() {} 4341 4342 // CloudGcpRouterIntegrationInput - Router 4343 type CloudGcpRouterIntegrationInput struct { 4344 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4345 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4346 // The linked account identifier. 4347 LinkedAccountId int `json:"linkedAccountId"` 4348 // The data polling interval in seconds. 4349 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4350 } 4351 4352 // CloudGcpRunIntegration - Run Integration 4353 type CloudGcpRunIntegration struct { 4354 // The object creation date, in epoch (Unix) time 4355 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4356 // The cloud service integration identifier. 4357 ID int `json:"id,omitempty"` 4358 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4359 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4360 // The parent linked account identifier. 4361 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4362 // The data polling interval in seconds. 4363 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4364 // The cloud service integration name. 4365 Name string `json:"name,omitempty"` 4366 // The parent NewRelic account identifier. 4367 NrAccountId int `json:"nrAccountId"` 4368 // The cloud service used in the integration. 4369 Service CloudService `json:"service,omitempty"` 4370 // The object last update date, in epoch (Unix) time 4371 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4372 } 4373 4374 func (x *CloudGcpRunIntegration) ImplementsCloudIntegration() {} 4375 4376 // CloudGcpRunIntegrationInput - Run 4377 type CloudGcpRunIntegrationInput struct { 4378 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4379 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4380 // The linked account identifier. 4381 LinkedAccountId int `json:"linkedAccountId"` 4382 // The data polling interval in seconds. 4383 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4384 } 4385 4386 // CloudGcpSpannerIntegration - Cloud Spanner Integration 4387 type CloudGcpSpannerIntegration struct { 4388 // The object creation date, in epoch (Unix) time 4389 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4390 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4391 FetchTags bool `json:"fetchTags,omitempty"` 4392 // The cloud service integration identifier. 4393 ID int `json:"id,omitempty"` 4394 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4395 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4396 // The parent linked account identifier. 4397 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4398 // The data polling interval in seconds. 4399 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4400 // The cloud service integration name. 4401 Name string `json:"name,omitempty"` 4402 // The parent NewRelic account identifier. 4403 NrAccountId int `json:"nrAccountId"` 4404 // The cloud service used in the integration. 4405 Service CloudService `json:"service,omitempty"` 4406 // The object last update date, in epoch (Unix) time 4407 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4408 } 4409 4410 func (x *CloudGcpSpannerIntegration) ImplementsCloudIntegration() {} 4411 4412 // CloudGcpSpannerIntegrationInput - Cloud Spanner 4413 type CloudGcpSpannerIntegrationInput struct { 4414 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4415 FetchTags bool `json:"fetchTags,omitempty"` 4416 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4417 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4418 // The linked account identifier. 4419 LinkedAccountId int `json:"linkedAccountId"` 4420 // The data polling interval in seconds. 4421 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4422 } 4423 4424 // CloudGcpSqlIntegration - Cloud SQL Integration 4425 type CloudGcpSqlIntegration struct { 4426 // The object creation date, in epoch (Unix) time 4427 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4428 // The cloud service integration identifier. 4429 ID int `json:"id,omitempty"` 4430 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4431 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4432 // The parent linked account identifier. 4433 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4434 // The data polling interval in seconds. 4435 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4436 // The cloud service integration name. 4437 Name string `json:"name,omitempty"` 4438 // The parent NewRelic account identifier. 4439 NrAccountId int `json:"nrAccountId"` 4440 // The cloud service used in the integration. 4441 Service CloudService `json:"service,omitempty"` 4442 // The object last update date, in epoch (Unix) time 4443 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4444 } 4445 4446 func (x *CloudGcpSqlIntegration) ImplementsCloudIntegration() {} 4447 4448 // CloudGcpSqlIntegrationInput - Google Cloud SQL 4449 type CloudGcpSqlIntegrationInput struct { 4450 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4451 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4452 // The linked account identifier. 4453 LinkedAccountId int `json:"linkedAccountId"` 4454 // The data polling interval in seconds. 4455 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4456 } 4457 4458 // CloudGcpStorageIntegration - Cloud Storage Integration 4459 type CloudGcpStorageIntegration struct { 4460 // The object creation date, in epoch (Unix) time 4461 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4462 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4463 FetchTags bool `json:"fetchTags,omitempty"` 4464 // The cloud service integration identifier. 4465 ID int `json:"id,omitempty"` 4466 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4467 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4468 // The parent linked account identifier. 4469 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4470 // The data polling interval in seconds. 4471 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4472 // The cloud service integration name. 4473 Name string `json:"name,omitempty"` 4474 // The parent NewRelic account identifier. 4475 NrAccountId int `json:"nrAccountId"` 4476 // The cloud service used in the integration. 4477 Service CloudService `json:"service,omitempty"` 4478 // The object last update date, in epoch (Unix) time 4479 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4480 } 4481 4482 func (x *CloudGcpStorageIntegration) ImplementsCloudIntegration() {} 4483 4484 // CloudGcpStorageIntegrationInput - Google Cloud Storage 4485 type CloudGcpStorageIntegrationInput struct { 4486 // Specify if labels and the extended inventory should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4487 FetchTags bool `json:"fetchTags,omitempty"` 4488 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4489 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4490 // The linked account identifier. 4491 LinkedAccountId int `json:"linkedAccountId"` 4492 // The data polling interval in seconds. 4493 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4494 } 4495 4496 // CloudGcpVmsIntegration - Compute Engine Integration 4497 type CloudGcpVmsIntegration struct { 4498 // The object creation date, in epoch (Unix) time 4499 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4500 // The cloud service integration identifier. 4501 ID int `json:"id,omitempty"` 4502 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4503 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4504 // The parent linked account identifier. 4505 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4506 // The data polling interval in seconds. 4507 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4508 // The cloud service integration name. 4509 Name string `json:"name,omitempty"` 4510 // The parent NewRelic account identifier. 4511 NrAccountId int `json:"nrAccountId"` 4512 // The cloud service used in the integration. 4513 Service CloudService `json:"service,omitempty"` 4514 // The object last update date, in epoch (Unix) time 4515 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4516 } 4517 4518 func (x *CloudGcpVmsIntegration) ImplementsCloudIntegration() {} 4519 4520 // CloudGcpVmsIntegrationInput - Google Compute Engine 4521 type CloudGcpVmsIntegrationInput struct { 4522 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4523 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4524 // The linked account identifier. 4525 LinkedAccountId int `json:"linkedAccountId"` 4526 // The data polling interval in seconds. 4527 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4528 } 4529 4530 // CloudGcpVpcaccessIntegration - VPC Access Integration 4531 type CloudGcpVpcaccessIntegration struct { 4532 // The object creation date, in epoch (Unix) time 4533 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4534 // The cloud service integration identifier. 4535 ID int `json:"id,omitempty"` 4536 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4537 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4538 // The parent linked account identifier. 4539 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4540 // The data polling interval in seconds. 4541 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4542 // The cloud service integration name. 4543 Name string `json:"name,omitempty"` 4544 // The parent NewRelic account identifier. 4545 NrAccountId int `json:"nrAccountId"` 4546 // The cloud service used in the integration. 4547 Service CloudService `json:"service,omitempty"` 4548 // The object last update date, in epoch (Unix) time 4549 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4550 } 4551 4552 func (x *CloudGcpVpcaccessIntegration) ImplementsCloudIntegration() {} 4553 4554 // CloudGcpVpcaccessIntegrationInput - VPC Access 4555 type CloudGcpVpcaccessIntegrationInput struct { 4556 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4557 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4558 // The linked account identifier. 4559 LinkedAccountId int `json:"linkedAccountId"` 4560 // The data polling interval in seconds. 4561 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4562 } 4563 4564 // CloudHealthIntegration - Health Integration 4565 type CloudHealthIntegration struct { 4566 // The object creation date, in epoch (Unix) time 4567 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4568 // The cloud service integration identifier. 4569 ID int `json:"id,omitempty"` 4570 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4571 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4572 // The parent linked account identifier. 4573 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4574 // The data polling interval in seconds. 4575 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4576 // The cloud service integration name. 4577 Name string `json:"name,omitempty"` 4578 // The parent NewRelic account identifier. 4579 NrAccountId int `json:"nrAccountId"` 4580 // The cloud service used in the integration. 4581 Service CloudService `json:"service,omitempty"` 4582 // The object last update date, in epoch (Unix) time 4583 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4584 } 4585 4586 func (x *CloudHealthIntegration) ImplementsCloudIntegration() {} 4587 4588 // CloudHealthIntegrationInput - AWS Health 4589 type CloudHealthIntegrationInput struct { 4590 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4591 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4592 // The linked account identifier. 4593 LinkedAccountId int `json:"linkedAccountId"` 4594 // The data polling interval in seconds. 4595 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4596 } 4597 4598 // CloudIamIntegration - IAM Integration 4599 type CloudIamIntegration struct { 4600 // The object creation date, in epoch (Unix) time 4601 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4602 // The cloud service integration identifier. 4603 ID int `json:"id,omitempty"` 4604 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4605 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4606 // The parent linked account identifier. 4607 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4608 // The data polling interval in seconds. 4609 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4610 // The cloud service integration name. 4611 Name string `json:"name,omitempty"` 4612 // The parent NewRelic account identifier. 4613 NrAccountId int `json:"nrAccountId"` 4614 // The cloud service used in the integration. 4615 Service CloudService `json:"service,omitempty"` 4616 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4617 TagKey string `json:"tagKey,omitempty"` 4618 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4619 TagValue string `json:"tagValue,omitempty"` 4620 // The object last update date, in epoch (Unix) time 4621 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4622 } 4623 4624 func (x *CloudIamIntegration) ImplementsCloudIntegration() {} 4625 4626 // CloudIamIntegrationInput - AWS Identity and Access Management (IAM) 4627 type CloudIamIntegrationInput struct { 4628 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4629 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4630 // The linked account identifier. 4631 LinkedAccountId int `json:"linkedAccountId"` 4632 // The data polling interval in seconds. 4633 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4634 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4635 TagKey string `json:"tagKey,omitempty"` 4636 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4637 TagValue string `json:"tagValue,omitempty"` 4638 } 4639 4640 // CloudIntegration - The configuration of a cloud service integration for a linked account. 4641 type CloudIntegration struct { 4642 // The object creation date, in epoch (Unix) time 4643 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4644 // The cloud service integration identifier. 4645 ID int `json:"id,omitempty"` 4646 // The parent linked account identifier. 4647 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4648 // The cloud service integration name. 4649 Name string `json:"name,omitempty"` 4650 // The parent NewRelic account identifier. 4651 NrAccountId int `json:"nrAccountId"` 4652 // The cloud service used in the integration. 4653 Service CloudService `json:"service,omitempty"` 4654 // The object last update date, in epoch (Unix) time 4655 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4656 } 4657 4658 func (x *CloudIntegration) ImplementsCloudIntegration() {} 4659 4660 // CloudIntegrationMutationError - Integration Mutation Error 4661 type CloudIntegrationMutationError struct { 4662 // The passed integration slug. 4663 IntegrationSlug string `json:"integrationSlug,omitempty"` 4664 // The passed linked account identifier. 4665 LinkedAccountId int `json:"linkedAccountId,omitempty"` 4666 // The error message. 4667 Message string `json:"message"` 4668 // The passed newrelic account identifier. 4669 NrAccountId int `json:"nrAccountId"` 4670 // The error status. 4671 Type string `json:"type"` 4672 } 4673 4674 // CloudIntegrationsInput - List of providers 4675 type CloudIntegrationsInput struct { 4676 // Aws provider 4677 Aws CloudAwsIntegrationsInput `json:"aws,omitempty"` 4678 // AwsGovcloud provider 4679 AwsGovcloud CloudAwsGovcloudIntegrationsInput `json:"awsGovcloud,omitempty"` 4680 // Azure provider 4681 Azure CloudAzureIntegrationsInput `json:"azure,omitempty"` 4682 // Gcp provider 4683 Gcp CloudGcpIntegrationsInput `json:"gcp,omitempty"` 4684 } 4685 4686 // CloudIotIntegration - IoT Integration 4687 type CloudIotIntegration struct { 4688 // Specify each AWS region that includes the resources that you want to monitor. 4689 AwsRegions []string `json:"awsRegions,omitempty"` 4690 // The object creation date, in epoch (Unix) time 4691 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4692 // The cloud service integration identifier. 4693 ID int `json:"id,omitempty"` 4694 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4695 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4696 // The parent linked account identifier. 4697 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4698 // The data polling interval in seconds. 4699 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4700 // The cloud service integration name. 4701 Name string `json:"name,omitempty"` 4702 // The parent NewRelic account identifier. 4703 NrAccountId int `json:"nrAccountId"` 4704 // The cloud service used in the integration. 4705 Service CloudService `json:"service,omitempty"` 4706 // The object last update date, in epoch (Unix) time 4707 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4708 } 4709 4710 func (x *CloudIotIntegration) ImplementsCloudIntegration() {} 4711 4712 // CloudIotIntegrationInput - AWS IoT 4713 type CloudIotIntegrationInput struct { 4714 // Specify each AWS region that includes the resources that you want to monitor. 4715 AwsRegions []string `json:"awsRegions,omitempty"` 4716 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4717 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4718 // The linked account identifier. 4719 LinkedAccountId int `json:"linkedAccountId"` 4720 // The data polling interval in seconds. 4721 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4722 } 4723 4724 // CloudKinesisFirehoseIntegration - Kinesis Firehose Integration 4725 type CloudKinesisFirehoseIntegration struct { 4726 // Specify each AWS region that includes the resources that you want to monitor. 4727 AwsRegions []string `json:"awsRegions,omitempty"` 4728 // The object creation date, in epoch (Unix) time 4729 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4730 // The cloud service integration identifier. 4731 ID int `json:"id,omitempty"` 4732 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4733 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4734 // The parent linked account identifier. 4735 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4736 // The data polling interval in seconds. 4737 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4738 // The cloud service integration name. 4739 Name string `json:"name,omitempty"` 4740 // The parent NewRelic account identifier. 4741 NrAccountId int `json:"nrAccountId"` 4742 // The cloud service used in the integration. 4743 Service CloudService `json:"service,omitempty"` 4744 // The object last update date, in epoch (Unix) time 4745 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4746 } 4747 4748 func (x *CloudKinesisFirehoseIntegration) ImplementsCloudIntegration() {} 4749 4750 // CloudKinesisFirehoseIntegrationInput - Amazon Kinesis Data Firehose 4751 type CloudKinesisFirehoseIntegrationInput struct { 4752 // Specify each AWS region that includes the resources that you want to monitor. 4753 AwsRegions []string `json:"awsRegions,omitempty"` 4754 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4755 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4756 // The linked account identifier. 4757 LinkedAccountId int `json:"linkedAccountId"` 4758 // The data polling interval in seconds. 4759 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4760 } 4761 4762 // CloudKinesisIntegration - Kinesis Streams Integration 4763 type CloudKinesisIntegration struct { 4764 // Specify each AWS region that includes the resources that you want to monitor. 4765 AwsRegions []string `json:"awsRegions,omitempty"` 4766 // The object creation date, in epoch (Unix) time 4767 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4768 // Specify if Shards should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 4769 FetchShards bool `json:"fetchShards,omitempty"` 4770 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4771 FetchTags bool `json:"fetchTags,omitempty"` 4772 // The cloud service integration identifier. 4773 ID int `json:"id,omitempty"` 4774 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4775 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4776 // The parent linked account identifier. 4777 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4778 // The data polling interval in seconds. 4779 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4780 // The cloud service integration name. 4781 Name string `json:"name,omitempty"` 4782 // The parent NewRelic account identifier. 4783 NrAccountId int `json:"nrAccountId"` 4784 // The cloud service used in the integration. 4785 Service CloudService `json:"service,omitempty"` 4786 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4787 TagKey string `json:"tagKey,omitempty"` 4788 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4789 TagValue string `json:"tagValue,omitempty"` 4790 // The object last update date, in epoch (Unix) time 4791 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4792 } 4793 4794 func (x *CloudKinesisIntegration) ImplementsCloudIntegration() {} 4795 4796 // CloudKinesisIntegrationInput - Amazon Kinesis Data Streams 4797 type CloudKinesisIntegrationInput struct { 4798 // Specify each AWS region that includes the resources that you want to monitor. 4799 AwsRegions []string `json:"awsRegions,omitempty"` 4800 // Specify if Shards should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 4801 FetchShards bool `json:"fetchShards,omitempty"` 4802 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4803 FetchTags bool `json:"fetchTags,omitempty"` 4804 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4805 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4806 // The linked account identifier. 4807 LinkedAccountId int `json:"linkedAccountId"` 4808 // The data polling interval in seconds. 4809 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4810 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4811 TagKey string `json:"tagKey,omitempty"` 4812 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4813 TagValue string `json:"tagValue,omitempty"` 4814 } 4815 4816 // CloudLambdaIntegration - Lambda Integration 4817 type CloudLambdaIntegration struct { 4818 // Specify each AWS region that includes the resources that you want to monitor. 4819 AwsRegions []string `json:"awsRegions,omitempty"` 4820 // The object creation date, in epoch (Unix) time 4821 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4822 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4823 FetchTags bool `json:"fetchTags,omitempty"` 4824 // The cloud service integration identifier. 4825 ID int `json:"id,omitempty"` 4826 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4827 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4828 // The parent linked account identifier. 4829 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 4830 // The data polling interval in seconds. 4831 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4832 // The cloud service integration name. 4833 Name string `json:"name,omitempty"` 4834 // The parent NewRelic account identifier. 4835 NrAccountId int `json:"nrAccountId"` 4836 // The cloud service used in the integration. 4837 Service CloudService `json:"service,omitempty"` 4838 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4839 TagKey string `json:"tagKey,omitempty"` 4840 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4841 TagValue string `json:"tagValue,omitempty"` 4842 // The object last update date, in epoch (Unix) time 4843 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4844 } 4845 4846 func (x *CloudLambdaIntegration) ImplementsCloudIntegration() {} 4847 4848 // CloudLambdaIntegrationInput - AWS Lambda 4849 type CloudLambdaIntegrationInput struct { 4850 // Specify each AWS region that includes the resources that you want to monitor. 4851 AwsRegions []string `json:"awsRegions,omitempty"` 4852 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 4853 FetchTags bool `json:"fetchTags,omitempty"` 4854 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 4855 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 4856 // The linked account identifier. 4857 LinkedAccountId int `json:"linkedAccountId"` 4858 // The data polling interval in seconds. 4859 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 4860 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 4861 TagKey string `json:"tagKey,omitempty"` 4862 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 4863 TagValue string `json:"tagValue,omitempty"` 4864 } 4865 4866 // CloudLinkAccountPayload - Autogenerated return type of LinkAccount 4867 type CloudLinkAccountPayload struct { 4868 // The list of errors. 4869 Errors []CloudAccountMutationError `json:"errors"` 4870 // The created Linked accounts. 4871 LinkedAccounts []CloudLinkedAccount `json:"linkedAccounts"` 4872 } 4873 4874 // CloudLinkCloudAccountsInput - Specific Cloud provider information required to link the Cloud provider account to a NewRelic account. 4875 type CloudLinkCloudAccountsInput struct { 4876 // Aws provider 4877 Aws []CloudAwsLinkAccountInput `json:"aws,omitempty"` 4878 // AwsGovcloud provider 4879 AwsGovcloud []CloudAwsGovcloudLinkAccountInput `json:"awsGovcloud,omitempty"` 4880 // Azure provider 4881 Azure []CloudAzureLinkAccountInput `json:"azure,omitempty"` 4882 // Gcp provider 4883 Gcp []CloudGcpLinkAccountInput `json:"gcp,omitempty"` 4884 } 4885 4886 // CloudLinkedAccount - A cloud account linked to a NewRelic account. 4887 type CloudLinkedAccount struct { 4888 // The credential. This is a Role ARN for AWS, an application ID for Azure and a service account ID or user account email for GCP. 4889 AuthLabel string `json:"authLabel"` 4890 // The object creation date, in epoch (Unix) time 4891 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 4892 // Indicates whether the account disabled. 4893 Disabled bool `json:"disabled,omitempty"` 4894 // The cloud account identifier. This is the Account ID in AWS, the Subscription ID in Azure and the Project ID in GCP. 4895 ExternalId string `json:"externalId,omitempty"` 4896 // The linked account identifier in NewRelic. 4897 ID int `json:"id"` 4898 // Get details of one cloud service integration. 4899 Integration CloudIntegrationInterface `json:"integration"` 4900 // Get details of all cloud service integrations. 4901 Integrations []CloudIntegrationInterface `json:"integrations"` 4902 // Indicate how the metrics will be collected (PUSH/PULL) 4903 MetricCollectionMode CloudMetricCollectionMode `json:"metricCollectionMode"` 4904 // The linked account name in NewRelic. 4905 Name string `json:"name"` 4906 // The New Relic account identifier. 4907 NrAccountId int `json:"nrAccountId"` 4908 // The cloud provider. 4909 Provider CloudProviderInterface `json:"provider"` 4910 // The object last update date, in epoch (Unix) time 4911 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 4912 } 4913 4914 // special 4915 func (x *CloudLinkedAccount) UnmarshalJSON(b []byte) error { 4916 var objMap map[string]*json.RawMessage 4917 err := json.Unmarshal(b, &objMap) 4918 if err != nil { 4919 return err 4920 } 4921 4922 for k, v := range objMap { 4923 if v == nil { 4924 continue 4925 } 4926 4927 switch k { 4928 case "authLabel": 4929 err = json.Unmarshal(*v, &x.AuthLabel) 4930 if err != nil { 4931 return err 4932 } 4933 case "createdAt": 4934 err = json.Unmarshal(*v, &x.CreatedAt) 4935 if err != nil { 4936 return err 4937 } 4938 case "disabled": 4939 err = json.Unmarshal(*v, &x.Disabled) 4940 if err != nil { 4941 return err 4942 } 4943 case "externalId": 4944 err = json.Unmarshal(*v, &x.ExternalId) 4945 if err != nil { 4946 return err 4947 } 4948 case "id": 4949 err = json.Unmarshal(*v, &x.ID) 4950 if err != nil { 4951 return err 4952 } 4953 case "integration": 4954 if v == nil { 4955 continue 4956 } 4957 xxx, err := UnmarshalCloudIntegrationInterface(*v) 4958 if err != nil { 4959 return err 4960 } 4961 4962 if xxx != nil { 4963 x.Integration = *xxx 4964 } 4965 case "integrations": 4966 if v == nil { 4967 continue 4968 } 4969 var rawMessageIntegrations []*json.RawMessage 4970 err = json.Unmarshal(*v, &rawMessageIntegrations) 4971 if err != nil { 4972 return err 4973 } 4974 4975 for _, m := range rawMessageIntegrations { 4976 xxx, err := UnmarshalCloudIntegrationInterface(*m) 4977 if err != nil { 4978 return err 4979 } 4980 4981 if xxx != nil { 4982 x.Integrations = append(x.Integrations, *xxx) 4983 } 4984 } 4985 case "metricCollectionMode": 4986 err = json.Unmarshal(*v, &x.MetricCollectionMode) 4987 if err != nil { 4988 return err 4989 } 4990 case "name": 4991 err = json.Unmarshal(*v, &x.Name) 4992 if err != nil { 4993 return err 4994 } 4995 case "nrAccountId": 4996 err = json.Unmarshal(*v, &x.NrAccountId) 4997 if err != nil { 4998 return err 4999 } 5000 case "provider": 5001 if v == nil { 5002 continue 5003 } 5004 xxx, err := UnmarshalCloudProviderInterface(*v) 5005 if err != nil { 5006 return err 5007 } 5008 5009 if xxx != nil { 5010 x.Provider = *xxx 5011 } 5012 case "updatedAt": 5013 err = json.Unmarshal(*v, &x.UpdatedAt) 5014 if err != nil { 5015 return err 5016 } 5017 } 5018 } 5019 5020 return nil 5021 } 5022 5023 // CloudProvider - A cloud services provider. 5024 type CloudProvider struct { 5025 // The object creation date, in epoch (Unix) time 5026 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5027 // The cloud provider identifier in NewRelic. 5028 ID int `json:"id"` 5029 // The cloud provider icon name. 5030 Icon string `json:"icon"` 5031 // The cloud provider name. 5032 Name string `json:"name"` 5033 // Get details of one cloud provider service. 5034 Service CloudService `json:"service,omitempty"` 5035 // Get details of all the cloud provider services available for integration. 5036 Services []CloudService `json:"services"` 5037 // The cloud provider short name. 5038 Slug string `json:"slug"` 5039 // The object last update date, in epoch (Unix) time 5040 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5041 } 5042 5043 func (x *CloudProvider) ImplementsCloudProvider() {} 5044 5045 // CloudRdsIntegration - RDS Integration 5046 type CloudRdsIntegration struct { 5047 // Specify each AWS region that includes the resources that you want to monitor. 5048 AwsRegions []string `json:"awsRegions,omitempty"` 5049 // The object creation date, in epoch (Unix) time 5050 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5051 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5052 FetchTags bool `json:"fetchTags,omitempty"` 5053 // The cloud service integration identifier. 5054 ID int `json:"id,omitempty"` 5055 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5056 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5057 // The parent linked account identifier. 5058 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5059 // The data polling interval in seconds. 5060 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5061 // The cloud service integration name. 5062 Name string `json:"name,omitempty"` 5063 // The parent NewRelic account identifier. 5064 NrAccountId int `json:"nrAccountId"` 5065 // The cloud service used in the integration. 5066 Service CloudService `json:"service,omitempty"` 5067 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5068 TagKey string `json:"tagKey,omitempty"` 5069 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5070 TagValue string `json:"tagValue,omitempty"` 5071 // The object last update date, in epoch (Unix) time 5072 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5073 } 5074 5075 func (x *CloudRdsIntegration) ImplementsCloudIntegration() {} 5076 5077 // CloudRdsIntegrationInput - Amazon Relation Database Service (RDS) 5078 type CloudRdsIntegrationInput struct { 5079 // Specify each AWS region that includes the resources that you want to monitor. 5080 AwsRegions []string `json:"awsRegions,omitempty"` 5081 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5082 FetchTags bool `json:"fetchTags,omitempty"` 5083 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5084 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5085 // The linked account identifier. 5086 LinkedAccountId int `json:"linkedAccountId"` 5087 // The data polling interval in seconds. 5088 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5089 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5090 TagKey string `json:"tagKey,omitempty"` 5091 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5092 TagValue string `json:"tagValue,omitempty"` 5093 } 5094 5095 // CloudRedshiftIntegration - Redshift Integration 5096 type CloudRedshiftIntegration struct { 5097 // Specify each AWS region that includes the resources that you want to monitor. 5098 AwsRegions []string `json:"awsRegions,omitempty"` 5099 // The object creation date, in epoch (Unix) time 5100 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5101 // The cloud service integration identifier. 5102 ID int `json:"id,omitempty"` 5103 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5104 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5105 // The parent linked account identifier. 5106 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5107 // The data polling interval in seconds. 5108 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5109 // The cloud service integration name. 5110 Name string `json:"name,omitempty"` 5111 // The parent NewRelic account identifier. 5112 NrAccountId int `json:"nrAccountId"` 5113 // The cloud service used in the integration. 5114 Service CloudService `json:"service,omitempty"` 5115 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5116 TagKey string `json:"tagKey,omitempty"` 5117 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5118 TagValue string `json:"tagValue,omitempty"` 5119 // The object last update date, in epoch (Unix) time 5120 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5121 } 5122 5123 func (x *CloudRedshiftIntegration) ImplementsCloudIntegration() {} 5124 5125 // CloudRedshiftIntegrationInput - Amazon Redshift 5126 type CloudRedshiftIntegrationInput struct { 5127 // Specify each AWS region that includes the resources that you want to monitor. 5128 AwsRegions []string `json:"awsRegions,omitempty"` 5129 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5130 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5131 // The linked account identifier. 5132 LinkedAccountId int `json:"linkedAccountId"` 5133 // The data polling interval in seconds. 5134 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5135 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5136 TagKey string `json:"tagKey,omitempty"` 5137 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5138 TagValue string `json:"tagValue,omitempty"` 5139 } 5140 5141 // CloudRenameAccountPayload - Autogenerated return type of RenameAccount 5142 type CloudRenameAccountPayload struct { 5143 // The list of errors. 5144 Errors []CloudAccountMutationError `json:"errors"` 5145 // The updated linked accounts. 5146 LinkedAccounts []CloudLinkedAccount `json:"linkedAccounts"` 5147 } 5148 5149 // CloudRenameAccountsInput - Information required when operating on a Linked Account. 5150 type CloudRenameAccountsInput struct { 5151 // The linked account identifier. 5152 LinkedAccountId int `json:"linkedAccountId"` 5153 // The linked account new name. 5154 Name string `json:"name"` 5155 } 5156 5157 // CloudRoute53Integration - Route 53 Integration 5158 type CloudRoute53Integration struct { 5159 // The object creation date, in epoch (Unix) time 5160 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5161 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5162 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5163 // The cloud service integration identifier. 5164 ID int `json:"id,omitempty"` 5165 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5166 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5167 // The parent linked account identifier. 5168 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5169 // The data polling interval in seconds. 5170 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5171 // The cloud service integration name. 5172 Name string `json:"name,omitempty"` 5173 // The parent NewRelic account identifier. 5174 NrAccountId int `json:"nrAccountId"` 5175 // The cloud service used in the integration. 5176 Service CloudService `json:"service,omitempty"` 5177 // The object last update date, in epoch (Unix) time 5178 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5179 } 5180 5181 func (x *CloudRoute53Integration) ImplementsCloudIntegration() {} 5182 5183 // CloudRoute53IntegrationInput - Amazon Route 53 5184 type CloudRoute53IntegrationInput struct { 5185 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5186 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5187 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5188 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5189 // The linked account identifier. 5190 LinkedAccountId int `json:"linkedAccountId"` 5191 // The data polling interval in seconds. 5192 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5193 } 5194 5195 // CloudS3Integration - S3 Integration 5196 type CloudS3Integration struct { 5197 // The object creation date, in epoch (Unix) time 5198 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5199 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5200 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5201 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5202 FetchTags bool `json:"fetchTags,omitempty"` 5203 // The cloud service integration identifier. 5204 ID int `json:"id,omitempty"` 5205 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5206 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5207 // The parent linked account identifier. 5208 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5209 // The data polling interval in seconds. 5210 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5211 // The cloud service integration name. 5212 Name string `json:"name,omitempty"` 5213 // The parent NewRelic account identifier. 5214 NrAccountId int `json:"nrAccountId"` 5215 // The cloud service used in the integration. 5216 Service CloudService `json:"service,omitempty"` 5217 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5218 TagKey string `json:"tagKey,omitempty"` 5219 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5220 TagValue string `json:"tagValue,omitempty"` 5221 // The object last update date, in epoch (Unix) time 5222 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5223 } 5224 5225 func (x *CloudS3Integration) ImplementsCloudIntegration() {} 5226 5227 // CloudS3IntegrationInput - Amazon Simple Storage Service (S3) 5228 type CloudS3IntegrationInput struct { 5229 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5230 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5231 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5232 FetchTags bool `json:"fetchTags,omitempty"` 5233 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5234 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5235 // The linked account identifier. 5236 LinkedAccountId int `json:"linkedAccountId"` 5237 // The data polling interval in seconds. 5238 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5239 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5240 TagKey string `json:"tagKey,omitempty"` 5241 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5242 TagValue string `json:"tagValue,omitempty"` 5243 } 5244 5245 // CloudService - A Cloud Provider service available for monitoring. 5246 type CloudService struct { 5247 // The object creation date, in epoch (Unix) time 5248 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5249 // The cloud service identifier in NewRelic. 5250 ID int `json:"id"` 5251 // The cloud service icon name. 5252 Icon string `json:"icon"` 5253 // Shows if the cloud service is enabled for integrating. 5254 IsEnabled bool `json:"isEnabled"` 5255 // The cloud service name. 5256 Name string `json:"name"` 5257 // The cloud provider. 5258 Provider CloudProviderInterface `json:"provider"` 5259 // The cloud service unique short name. 5260 Slug string `json:"slug"` 5261 // The object last update date, in epoch (Unix) time 5262 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5263 } 5264 5265 // special 5266 func (x *CloudService) UnmarshalJSON(b []byte) error { 5267 var objMap map[string]*json.RawMessage 5268 err := json.Unmarshal(b, &objMap) 5269 if err != nil { 5270 return err 5271 } 5272 5273 for k, v := range objMap { 5274 if v == nil { 5275 continue 5276 } 5277 5278 switch k { 5279 case "createdAt": 5280 err = json.Unmarshal(*v, &x.CreatedAt) 5281 if err != nil { 5282 return err 5283 } 5284 case "id": 5285 err = json.Unmarshal(*v, &x.ID) 5286 if err != nil { 5287 return err 5288 } 5289 case "icon": 5290 err = json.Unmarshal(*v, &x.Icon) 5291 if err != nil { 5292 return err 5293 } 5294 case "isEnabled": 5295 err = json.Unmarshal(*v, &x.IsEnabled) 5296 if err != nil { 5297 return err 5298 } 5299 case "name": 5300 err = json.Unmarshal(*v, &x.Name) 5301 if err != nil { 5302 return err 5303 } 5304 case "provider": 5305 if v == nil { 5306 continue 5307 } 5308 xxx, err := UnmarshalCloudProviderInterface(*v) 5309 if err != nil { 5310 return err 5311 } 5312 5313 if xxx != nil { 5314 x.Provider = *xxx 5315 } 5316 case "slug": 5317 err = json.Unmarshal(*v, &x.Slug) 5318 if err != nil { 5319 return err 5320 } 5321 case "updatedAt": 5322 err = json.Unmarshal(*v, &x.UpdatedAt) 5323 if err != nil { 5324 return err 5325 } 5326 } 5327 } 5328 5329 return nil 5330 } 5331 5332 // CloudSesIntegration - SES Integration 5333 type CloudSesIntegration struct { 5334 // Specify each AWS region that includes the resources that you want to monitor. 5335 AwsRegions []string `json:"awsRegions,omitempty"` 5336 // The object creation date, in epoch (Unix) time 5337 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5338 // The cloud service integration identifier. 5339 ID int `json:"id,omitempty"` 5340 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5341 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5342 // The parent linked account identifier. 5343 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5344 // The data polling interval in seconds. 5345 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5346 // The cloud service integration name. 5347 Name string `json:"name,omitempty"` 5348 // The parent NewRelic account identifier. 5349 NrAccountId int `json:"nrAccountId"` 5350 // The cloud service used in the integration. 5351 Service CloudService `json:"service,omitempty"` 5352 // The object last update date, in epoch (Unix) time 5353 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5354 } 5355 5356 func (x *CloudSesIntegration) ImplementsCloudIntegration() {} 5357 5358 // CloudSesIntegrationInput - Amazon Simple Email Service (SES) 5359 type CloudSesIntegrationInput struct { 5360 // Specify each AWS region that includes the resources that you want to monitor. 5361 AwsRegions []string `json:"awsRegions,omitempty"` 5362 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5363 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5364 // The linked account identifier. 5365 LinkedAccountId int `json:"linkedAccountId"` 5366 // The data polling interval in seconds. 5367 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5368 } 5369 5370 // CloudSnsIntegration - SNS Integration 5371 type CloudSnsIntegration struct { 5372 // Specify each AWS region that includes the resources that you want to monitor. 5373 AwsRegions []string `json:"awsRegions,omitempty"` 5374 // The object creation date, in epoch (Unix) time 5375 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5376 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5377 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5378 // The cloud service integration identifier. 5379 ID int `json:"id,omitempty"` 5380 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5381 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5382 // The parent linked account identifier. 5383 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5384 // The data polling interval in seconds. 5385 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5386 // The cloud service integration name. 5387 Name string `json:"name,omitempty"` 5388 // The parent NewRelic account identifier. 5389 NrAccountId int `json:"nrAccountId"` 5390 // The cloud service used in the integration. 5391 Service CloudService `json:"service,omitempty"` 5392 // The object last update date, in epoch (Unix) time 5393 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5394 } 5395 5396 func (x *CloudSnsIntegration) ImplementsCloudIntegration() {} 5397 5398 // CloudSnsIntegrationInput - Amazon Simple Notification Service (SNS) 5399 type CloudSnsIntegrationInput struct { 5400 // Specify each AWS region that includes the resources that you want to monitor. 5401 AwsRegions []string `json:"awsRegions,omitempty"` 5402 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5403 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5404 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5405 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5406 // The linked account identifier. 5407 LinkedAccountId int `json:"linkedAccountId"` 5408 // The data polling interval in seconds. 5409 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5410 } 5411 5412 // CloudSqsIntegration - SQS Integration 5413 type CloudSqsIntegration struct { 5414 // Specify each AWS region that includes the resources that you want to monitor. 5415 AwsRegions []string `json:"awsRegions,omitempty"` 5416 // The object creation date, in epoch (Unix) time 5417 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5418 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5419 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5420 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5421 FetchTags bool `json:"fetchTags,omitempty"` 5422 // The cloud service integration identifier. 5423 ID int `json:"id,omitempty"` 5424 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5425 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5426 // The parent linked account identifier. 5427 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5428 // The data polling interval in seconds. 5429 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5430 // The cloud service integration name. 5431 Name string `json:"name,omitempty"` 5432 // The parent NewRelic account identifier. 5433 NrAccountId int `json:"nrAccountId"` 5434 // Specify each name or prefix for the Queues that you want to monitor. Filter values are case-sensitive. 5435 QueuePrefixes []string `json:"queuePrefixes,omitempty"` 5436 // The cloud service used in the integration. 5437 Service CloudService `json:"service,omitempty"` 5438 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5439 TagKey string `json:"tagKey,omitempty"` 5440 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5441 TagValue string `json:"tagValue,omitempty"` 5442 // The object last update date, in epoch (Unix) time 5443 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5444 } 5445 5446 func (x *CloudSqsIntegration) ImplementsCloudIntegration() {} 5447 5448 // CloudSqsIntegrationInput - Amazon Simple Queue Service (SQS) 5449 type CloudSqsIntegrationInput struct { 5450 // Specify each AWS region that includes the resources that you want to monitor. 5451 AwsRegions []string `json:"awsRegions,omitempty"` 5452 // Determine if extra inventory data be collected or not. May affect total data collection time and contribute to the Cloud provider API rate limit. 5453 FetchExtendedInventory bool `json:"fetchExtendedInventory,omitempty"` 5454 // Specify if tags should be collected. May affect total data collection time and contribute to the Cloud provider API rate limit. 5455 FetchTags bool `json:"fetchTags,omitempty"` 5456 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5457 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5458 // The linked account identifier. 5459 LinkedAccountId int `json:"linkedAccountId"` 5460 // The data polling interval in seconds. 5461 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5462 // Specify each name or prefix for the Queues that you want to monitor. Filter values are case-sensitive. 5463 QueuePrefixes []string `json:"queuePrefixes,omitempty"` 5464 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5465 TagKey string `json:"tagKey,omitempty"` 5466 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5467 TagValue string `json:"tagValue,omitempty"` 5468 } 5469 5470 // CloudTrustedadvisorIntegration - Trusted Advisor Integration 5471 type CloudTrustedadvisorIntegration struct { 5472 // The object creation date, in epoch (Unix) time 5473 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5474 // The cloud service integration identifier. 5475 ID int `json:"id,omitempty"` 5476 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5477 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5478 // The parent linked account identifier. 5479 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5480 // The data polling interval in seconds. 5481 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5482 // The cloud service integration name. 5483 Name string `json:"name,omitempty"` 5484 // The parent NewRelic account identifier. 5485 NrAccountId int `json:"nrAccountId"` 5486 // The cloud service used in the integration. 5487 Service CloudService `json:"service,omitempty"` 5488 // The object last update date, in epoch (Unix) time 5489 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5490 } 5491 5492 func (x *CloudTrustedadvisorIntegration) ImplementsCloudIntegration() {} 5493 5494 // CloudTrustedadvisorIntegrationInput - Trusted Advisor 5495 type CloudTrustedadvisorIntegrationInput struct { 5496 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5497 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5498 // The linked account identifier. 5499 LinkedAccountId int `json:"linkedAccountId"` 5500 // The data polling interval in seconds. 5501 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5502 } 5503 5504 // CloudUnlinkAccountPayload - Autogenerated return type of UnlinkAccount 5505 type CloudUnlinkAccountPayload struct { 5506 // The list of errors. 5507 Errors []CloudAccountMutationError `json:"errors"` 5508 // The unlinked accounts. 5509 UnlinkedAccounts []CloudLinkedAccount `json:"unlinkedAccounts"` 5510 } 5511 5512 // CloudUnlinkAccountsInput - Information required to unlink (remove) a linked account. 5513 type CloudUnlinkAccountsInput struct { 5514 // The linked account identifier. 5515 LinkedAccountId int `json:"linkedAccountId"` 5516 } 5517 5518 // CloudVpcIntegration - VPC Integration 5519 type CloudVpcIntegration struct { 5520 // Specify each AWS region that includes the resources that you want to monitor. 5521 AwsRegions []string `json:"awsRegions,omitempty"` 5522 // The object creation date, in epoch (Unix) time 5523 CreatedAt nrtime.EpochSeconds `json:"createdAt"` 5524 // Specify if NAT gateway should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 5525 FetchNatGateway bool `json:"fetchNatGateway,omitempty"` 5526 // Specify if VPN should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 5527 FetchVpn bool `json:"fetchVpn,omitempty"` 5528 // The cloud service integration identifier. 5529 ID int `json:"id,omitempty"` 5530 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5531 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5532 // The parent linked account identifier. 5533 LinkedAccount CloudLinkedAccount `json:"linkedAccount,omitempty"` 5534 // The data polling interval in seconds. 5535 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5536 // The cloud service integration name. 5537 Name string `json:"name,omitempty"` 5538 // The parent NewRelic account identifier. 5539 NrAccountId int `json:"nrAccountId"` 5540 // The cloud service used in the integration. 5541 Service CloudService `json:"service,omitempty"` 5542 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5543 TagKey string `json:"tagKey,omitempty"` 5544 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5545 TagValue string `json:"tagValue,omitempty"` 5546 // The object last update date, in epoch (Unix) time 5547 UpdatedAt nrtime.EpochSeconds `json:"updatedAt"` 5548 } 5549 5550 func (x *CloudVpcIntegration) ImplementsCloudIntegration() {} 5551 5552 // CloudVpcIntegrationInput - Amazon Virtual Private Cloud (VPC) 5553 type CloudVpcIntegrationInput struct { 5554 // Specify each AWS region that includes the resources that you want to monitor. 5555 AwsRegions []string `json:"awsRegions,omitempty"` 5556 // Specify if NAT gateway should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 5557 FetchNatGateway bool `json:"fetchNatGateway,omitempty"` 5558 // Specify if VPN should be monitored. May affect total data collection time and contribute to the Cloud provider API rate limit. 5559 FetchVpn bool `json:"fetchVpn,omitempty"` 5560 // [DEPRECATED] Multiple polling interval is no longer supported, use only metrics_polling_interval 5561 InventoryPollingInterval int `json:"inventoryPollingInterval,omitempty"` 5562 // The linked account identifier. 5563 LinkedAccountId int `json:"linkedAccountId"` 5564 // The data polling interval in seconds. 5565 MetricsPollingInterval int `json:"metricsPollingInterval,omitempty"` 5566 // Specify a Tag key associated with the resources that you want to monitor. Filter values are case-sensitive. 5567 TagKey string `json:"tagKey,omitempty"` 5568 // Specify a Tag value associated with the resources that you want to monitor. Filter values are case-sensitive. 5569 TagValue string `json:"tagValue,omitempty"` 5570 } 5571 5572 type linkedAccountResponse struct { 5573 Actor Actor `json:"actor"` 5574 } 5575 5576 type linkedAccountsResponse struct { 5577 Actor Actor `json:"actor"` 5578 } 5579 5580 // SecureValue - The `SecureValue` scalar represents a secure value, ie a password, an API key, etc. 5581 type SecureValue string 5582 5583 // CloudIntegration - The configuration of a cloud service integration for a linked account. 5584 type CloudIntegrationInterface interface { 5585 ImplementsCloudIntegration() 5586 } 5587 5588 // UnmarshalCloudIntegrationInterface unmarshals the interface into the correct type 5589 // based on __typename provided by GraphQL 5590 func UnmarshalCloudIntegrationInterface(b []byte) (*CloudIntegrationInterface, error) { 5591 var err error 5592 5593 var rawMessageCloudIntegration map[string]*json.RawMessage 5594 err = json.Unmarshal(b, &rawMessageCloudIntegration) 5595 if err != nil { 5596 return nil, err 5597 } 5598 5599 // Nothing to unmarshal 5600 if len(rawMessageCloudIntegration) < 1 { 5601 return nil, nil 5602 } 5603 5604 var typeName string 5605 5606 if rawTypeName, ok := rawMessageCloudIntegration["__typename"]; ok { 5607 err = json.Unmarshal(*rawTypeName, &typeName) 5608 if err != nil { 5609 return nil, err 5610 } 5611 5612 switch typeName { 5613 case "CloudAlbIntegration": 5614 var interfaceType CloudAlbIntegration 5615 err = json.Unmarshal(b, &interfaceType) 5616 if err != nil { 5617 return nil, err 5618 } 5619 5620 var xxx CloudIntegrationInterface = &interfaceType 5621 5622 return &xxx, nil 5623 case "CloudApigatewayIntegration": 5624 var interfaceType CloudAPIgatewayIntegration 5625 err = json.Unmarshal(b, &interfaceType) 5626 if err != nil { 5627 return nil, err 5628 } 5629 5630 var xxx CloudIntegrationInterface = &interfaceType 5631 5632 return &xxx, nil 5633 case "CloudAutoscalingIntegration": 5634 var interfaceType CloudAutoscalingIntegration 5635 err = json.Unmarshal(b, &interfaceType) 5636 if err != nil { 5637 return nil, err 5638 } 5639 5640 var xxx CloudIntegrationInterface = &interfaceType 5641 5642 return &xxx, nil 5643 case "CloudAwsAppsyncIntegration": 5644 var interfaceType CloudAwsAppsyncIntegration 5645 err = json.Unmarshal(b, &interfaceType) 5646 if err != nil { 5647 return nil, err 5648 } 5649 5650 var xxx CloudIntegrationInterface = &interfaceType 5651 5652 return &xxx, nil 5653 case "CloudAwsAthenaIntegration": 5654 var interfaceType CloudAwsAthenaIntegration 5655 err = json.Unmarshal(b, &interfaceType) 5656 if err != nil { 5657 return nil, err 5658 } 5659 5660 var xxx CloudIntegrationInterface = &interfaceType 5661 5662 return &xxx, nil 5663 case "CloudAwsCognitoIntegration": 5664 var interfaceType CloudAwsCognitoIntegration 5665 err = json.Unmarshal(b, &interfaceType) 5666 if err != nil { 5667 return nil, err 5668 } 5669 5670 var xxx CloudIntegrationInterface = &interfaceType 5671 5672 return &xxx, nil 5673 case "CloudAwsConnectIntegration": 5674 var interfaceType CloudAwsConnectIntegration 5675 err = json.Unmarshal(b, &interfaceType) 5676 if err != nil { 5677 return nil, err 5678 } 5679 5680 var xxx CloudIntegrationInterface = &interfaceType 5681 5682 return &xxx, nil 5683 case "CloudAwsDirectconnectIntegration": 5684 var interfaceType CloudAwsDirectconnectIntegration 5685 err = json.Unmarshal(b, &interfaceType) 5686 if err != nil { 5687 return nil, err 5688 } 5689 5690 var xxx CloudIntegrationInterface = &interfaceType 5691 5692 return &xxx, nil 5693 case "CloudAwsDocdbIntegration": 5694 var interfaceType CloudAwsDocdbIntegration 5695 err = json.Unmarshal(b, &interfaceType) 5696 if err != nil { 5697 return nil, err 5698 } 5699 5700 var xxx CloudIntegrationInterface = &interfaceType 5701 5702 return &xxx, nil 5703 case "CloudAwsFsxIntegration": 5704 var interfaceType CloudAwsFsxIntegration 5705 err = json.Unmarshal(b, &interfaceType) 5706 if err != nil { 5707 return nil, err 5708 } 5709 5710 var xxx CloudIntegrationInterface = &interfaceType 5711 5712 return &xxx, nil 5713 case "CloudAwsGlueIntegration": 5714 var interfaceType CloudAwsGlueIntegration 5715 err = json.Unmarshal(b, &interfaceType) 5716 if err != nil { 5717 return nil, err 5718 } 5719 5720 var xxx CloudIntegrationInterface = &interfaceType 5721 5722 return &xxx, nil 5723 case "CloudAwsKinesisanalyticsIntegration": 5724 var interfaceType CloudAwsKinesisanalyticsIntegration 5725 err = json.Unmarshal(b, &interfaceType) 5726 if err != nil { 5727 return nil, err 5728 } 5729 5730 var xxx CloudIntegrationInterface = &interfaceType 5731 5732 return &xxx, nil 5733 case "CloudAwsMediaconvertIntegration": 5734 var interfaceType CloudAwsMediaconvertIntegration 5735 err = json.Unmarshal(b, &interfaceType) 5736 if err != nil { 5737 return nil, err 5738 } 5739 5740 var xxx CloudIntegrationInterface = &interfaceType 5741 5742 return &xxx, nil 5743 case "CloudAwsMediapackagevodIntegration": 5744 var interfaceType CloudAwsMediapackagevodIntegration 5745 err = json.Unmarshal(b, &interfaceType) 5746 if err != nil { 5747 return nil, err 5748 } 5749 5750 var xxx CloudIntegrationInterface = &interfaceType 5751 5752 return &xxx, nil 5753 case "CloudAwsMetadataIntegration": 5754 var interfaceType CloudAwsMetadataIntegration 5755 err = json.Unmarshal(b, &interfaceType) 5756 if err != nil { 5757 return nil, err 5758 } 5759 5760 var xxx CloudIntegrationInterface = &interfaceType 5761 5762 return &xxx, nil 5763 case "CloudAwsMqIntegration": 5764 var interfaceType CloudAwsMqIntegration 5765 err = json.Unmarshal(b, &interfaceType) 5766 if err != nil { 5767 return nil, err 5768 } 5769 5770 var xxx CloudIntegrationInterface = &interfaceType 5771 5772 return &xxx, nil 5773 case "CloudAwsMskIntegration": 5774 var interfaceType CloudAwsMskIntegration 5775 err = json.Unmarshal(b, &interfaceType) 5776 if err != nil { 5777 return nil, err 5778 } 5779 5780 var xxx CloudIntegrationInterface = &interfaceType 5781 5782 return &xxx, nil 5783 case "CloudAwsNeptuneIntegration": 5784 var interfaceType CloudAwsNeptuneIntegration 5785 err = json.Unmarshal(b, &interfaceType) 5786 if err != nil { 5787 return nil, err 5788 } 5789 5790 var xxx CloudIntegrationInterface = &interfaceType 5791 5792 return &xxx, nil 5793 case "CloudAwsQldbIntegration": 5794 var interfaceType CloudAwsQldbIntegration 5795 err = json.Unmarshal(b, &interfaceType) 5796 if err != nil { 5797 return nil, err 5798 } 5799 5800 var xxx CloudIntegrationInterface = &interfaceType 5801 5802 return &xxx, nil 5803 case "CloudAwsRoute53resolverIntegration": 5804 var interfaceType CloudAwsRoute53resolverIntegration 5805 err = json.Unmarshal(b, &interfaceType) 5806 if err != nil { 5807 return nil, err 5808 } 5809 5810 var xxx CloudIntegrationInterface = &interfaceType 5811 5812 return &xxx, nil 5813 case "CloudAwsStatesIntegration": 5814 var interfaceType CloudAwsStatesIntegration 5815 err = json.Unmarshal(b, &interfaceType) 5816 if err != nil { 5817 return nil, err 5818 } 5819 5820 var xxx CloudIntegrationInterface = &interfaceType 5821 5822 return &xxx, nil 5823 case "CloudAwsTagsGlobalIntegration": 5824 var interfaceType CloudAwsTagsGlobalIntegration 5825 err = json.Unmarshal(b, &interfaceType) 5826 if err != nil { 5827 return nil, err 5828 } 5829 5830 var xxx CloudIntegrationInterface = &interfaceType 5831 5832 return &xxx, nil 5833 case "CloudAwsTransitgatewayIntegration": 5834 var interfaceType CloudAwsTransitgatewayIntegration 5835 err = json.Unmarshal(b, &interfaceType) 5836 if err != nil { 5837 return nil, err 5838 } 5839 5840 var xxx CloudIntegrationInterface = &interfaceType 5841 5842 return &xxx, nil 5843 case "CloudAwsWafIntegration": 5844 var interfaceType CloudAwsWafIntegration 5845 err = json.Unmarshal(b, &interfaceType) 5846 if err != nil { 5847 return nil, err 5848 } 5849 5850 var xxx CloudIntegrationInterface = &interfaceType 5851 5852 return &xxx, nil 5853 case "CloudAwsWafv2Integration": 5854 var interfaceType CloudAwsWafv2Integration 5855 err = json.Unmarshal(b, &interfaceType) 5856 if err != nil { 5857 return nil, err 5858 } 5859 5860 var xxx CloudIntegrationInterface = &interfaceType 5861 5862 return &xxx, nil 5863 case "CloudAwsXrayIntegration": 5864 var interfaceType CloudAwsXrayIntegration 5865 err = json.Unmarshal(b, &interfaceType) 5866 if err != nil { 5867 return nil, err 5868 } 5869 5870 var xxx CloudIntegrationInterface = &interfaceType 5871 5872 return &xxx, nil 5873 case "CloudAzureApimanagementIntegration": 5874 var interfaceType CloudAzureAPImanagementIntegration 5875 err = json.Unmarshal(b, &interfaceType) 5876 if err != nil { 5877 return nil, err 5878 } 5879 5880 var xxx CloudIntegrationInterface = &interfaceType 5881 5882 return &xxx, nil 5883 case "CloudAzureAppgatewayIntegration": 5884 var interfaceType CloudAzureAppgatewayIntegration 5885 err = json.Unmarshal(b, &interfaceType) 5886 if err != nil { 5887 return nil, err 5888 } 5889 5890 var xxx CloudIntegrationInterface = &interfaceType 5891 5892 return &xxx, nil 5893 case "CloudAzureAppserviceIntegration": 5894 var interfaceType CloudAzureAppserviceIntegration 5895 err = json.Unmarshal(b, &interfaceType) 5896 if err != nil { 5897 return nil, err 5898 } 5899 5900 var xxx CloudIntegrationInterface = &interfaceType 5901 5902 return &xxx, nil 5903 case "CloudAzureContainersIntegration": 5904 var interfaceType CloudAzureContainersIntegration 5905 err = json.Unmarshal(b, &interfaceType) 5906 if err != nil { 5907 return nil, err 5908 } 5909 5910 var xxx CloudIntegrationInterface = &interfaceType 5911 5912 return &xxx, nil 5913 case "CloudAzureCosmosdbIntegration": 5914 var interfaceType CloudAzureCosmosdbIntegration 5915 err = json.Unmarshal(b, &interfaceType) 5916 if err != nil { 5917 return nil, err 5918 } 5919 5920 var xxx CloudIntegrationInterface = &interfaceType 5921 5922 return &xxx, nil 5923 case "CloudAzureCostmanagementIntegration": 5924 var interfaceType CloudAzureCostmanagementIntegration 5925 err = json.Unmarshal(b, &interfaceType) 5926 if err != nil { 5927 return nil, err 5928 } 5929 5930 var xxx CloudIntegrationInterface = &interfaceType 5931 5932 return &xxx, nil 5933 case "CloudAzureDatafactoryIntegration": 5934 var interfaceType CloudAzureDatafactoryIntegration 5935 err = json.Unmarshal(b, &interfaceType) 5936 if err != nil { 5937 return nil, err 5938 } 5939 5940 var xxx CloudIntegrationInterface = &interfaceType 5941 5942 return &xxx, nil 5943 case "CloudAzureEventhubIntegration": 5944 var interfaceType CloudAzureEventhubIntegration 5945 err = json.Unmarshal(b, &interfaceType) 5946 if err != nil { 5947 return nil, err 5948 } 5949 5950 var xxx CloudIntegrationInterface = &interfaceType 5951 5952 return &xxx, nil 5953 case "CloudAzureExpressrouteIntegration": 5954 var interfaceType CloudAzureExpressrouteIntegration 5955 err = json.Unmarshal(b, &interfaceType) 5956 if err != nil { 5957 return nil, err 5958 } 5959 5960 var xxx CloudIntegrationInterface = &interfaceType 5961 5962 return &xxx, nil 5963 case "CloudAzureFirewallsIntegration": 5964 var interfaceType CloudAzureFirewallsIntegration 5965 err = json.Unmarshal(b, &interfaceType) 5966 if err != nil { 5967 return nil, err 5968 } 5969 5970 var xxx CloudIntegrationInterface = &interfaceType 5971 5972 return &xxx, nil 5973 case "CloudAzureFrontdoorIntegration": 5974 var interfaceType CloudAzureFrontdoorIntegration 5975 err = json.Unmarshal(b, &interfaceType) 5976 if err != nil { 5977 return nil, err 5978 } 5979 5980 var xxx CloudIntegrationInterface = &interfaceType 5981 5982 return &xxx, nil 5983 case "CloudAzureFunctionsIntegration": 5984 var interfaceType CloudAzureFunctionsIntegration 5985 err = json.Unmarshal(b, &interfaceType) 5986 if err != nil { 5987 return nil, err 5988 } 5989 5990 var xxx CloudIntegrationInterface = &interfaceType 5991 5992 return &xxx, nil 5993 case "CloudAzureKeyvaultIntegration": 5994 var interfaceType CloudAzureKeyvaultIntegration 5995 err = json.Unmarshal(b, &interfaceType) 5996 if err != nil { 5997 return nil, err 5998 } 5999 6000 var xxx CloudIntegrationInterface = &interfaceType 6001 6002 return &xxx, nil 6003 case "CloudAzureLoadbalancerIntegration": 6004 var interfaceType CloudAzureLoadbalancerIntegration 6005 err = json.Unmarshal(b, &interfaceType) 6006 if err != nil { 6007 return nil, err 6008 } 6009 6010 var xxx CloudIntegrationInterface = &interfaceType 6011 6012 return &xxx, nil 6013 case "CloudAzureLogicappsIntegration": 6014 var interfaceType CloudAzureLogicappsIntegration 6015 err = json.Unmarshal(b, &interfaceType) 6016 if err != nil { 6017 return nil, err 6018 } 6019 6020 var xxx CloudIntegrationInterface = &interfaceType 6021 6022 return &xxx, nil 6023 case "CloudAzureMachinelearningIntegration": 6024 var interfaceType CloudAzureMachinelearningIntegration 6025 err = json.Unmarshal(b, &interfaceType) 6026 if err != nil { 6027 return nil, err 6028 } 6029 6030 var xxx CloudIntegrationInterface = &interfaceType 6031 6032 return &xxx, nil 6033 case "CloudAzureMariadbIntegration": 6034 var interfaceType CloudAzureMariadbIntegration 6035 err = json.Unmarshal(b, &interfaceType) 6036 if err != nil { 6037 return nil, err 6038 } 6039 6040 var xxx CloudIntegrationInterface = &interfaceType 6041 6042 return &xxx, nil 6043 case "CloudAzureMysqlIntegration": 6044 var interfaceType CloudAzureMysqlIntegration 6045 err = json.Unmarshal(b, &interfaceType) 6046 if err != nil { 6047 return nil, err 6048 } 6049 6050 var xxx CloudIntegrationInterface = &interfaceType 6051 6052 return &xxx, nil 6053 case "CloudAzurePostgresqlIntegration": 6054 var interfaceType CloudAzurePostgresqlIntegration 6055 err = json.Unmarshal(b, &interfaceType) 6056 if err != nil { 6057 return nil, err 6058 } 6059 6060 var xxx CloudIntegrationInterface = &interfaceType 6061 6062 return &xxx, nil 6063 case "CloudAzurePowerbidedicatedIntegration": 6064 var interfaceType CloudAzurePowerbidedicatedIntegration 6065 err = json.Unmarshal(b, &interfaceType) 6066 if err != nil { 6067 return nil, err 6068 } 6069 6070 var xxx CloudIntegrationInterface = &interfaceType 6071 6072 return &xxx, nil 6073 case "CloudAzureRediscacheIntegration": 6074 var interfaceType CloudAzureRediscacheIntegration 6075 err = json.Unmarshal(b, &interfaceType) 6076 if err != nil { 6077 return nil, err 6078 } 6079 6080 var xxx CloudIntegrationInterface = &interfaceType 6081 6082 return &xxx, nil 6083 case "CloudAzureServicebusIntegration": 6084 var interfaceType CloudAzureServicebusIntegration 6085 err = json.Unmarshal(b, &interfaceType) 6086 if err != nil { 6087 return nil, err 6088 } 6089 6090 var xxx CloudIntegrationInterface = &interfaceType 6091 6092 return &xxx, nil 6093 case "CloudAzureServicefabricIntegration": 6094 var interfaceType CloudAzureServicefabricIntegration 6095 err = json.Unmarshal(b, &interfaceType) 6096 if err != nil { 6097 return nil, err 6098 } 6099 6100 var xxx CloudIntegrationInterface = &interfaceType 6101 6102 return &xxx, nil 6103 case "CloudAzureSqlIntegration": 6104 var interfaceType CloudAzureSqlIntegration 6105 err = json.Unmarshal(b, &interfaceType) 6106 if err != nil { 6107 return nil, err 6108 } 6109 6110 var xxx CloudIntegrationInterface = &interfaceType 6111 6112 return &xxx, nil 6113 case "CloudAzureSqlmanagedIntegration": 6114 var interfaceType CloudAzureSqlmanagedIntegration 6115 err = json.Unmarshal(b, &interfaceType) 6116 if err != nil { 6117 return nil, err 6118 } 6119 6120 var xxx CloudIntegrationInterface = &interfaceType 6121 6122 return &xxx, nil 6123 case "CloudAzureStorageIntegration": 6124 var interfaceType CloudAzureStorageIntegration 6125 err = json.Unmarshal(b, &interfaceType) 6126 if err != nil { 6127 return nil, err 6128 } 6129 6130 var xxx CloudIntegrationInterface = &interfaceType 6131 6132 return &xxx, nil 6133 case "CloudAzureVirtualmachineIntegration": 6134 var interfaceType CloudAzureVirtualmachineIntegration 6135 err = json.Unmarshal(b, &interfaceType) 6136 if err != nil { 6137 return nil, err 6138 } 6139 6140 var xxx CloudIntegrationInterface = &interfaceType 6141 6142 return &xxx, nil 6143 case "CloudAzureVirtualnetworksIntegration": 6144 var interfaceType CloudAzureVirtualnetworksIntegration 6145 err = json.Unmarshal(b, &interfaceType) 6146 if err != nil { 6147 return nil, err 6148 } 6149 6150 var xxx CloudIntegrationInterface = &interfaceType 6151 6152 return &xxx, nil 6153 case "CloudAzureVmsIntegration": 6154 var interfaceType CloudAzureVmsIntegration 6155 err = json.Unmarshal(b, &interfaceType) 6156 if err != nil { 6157 return nil, err 6158 } 6159 6160 var xxx CloudIntegrationInterface = &interfaceType 6161 6162 return &xxx, nil 6163 case "CloudAzureVpngatewaysIntegration": 6164 var interfaceType CloudAzureVpngatewaysIntegration 6165 err = json.Unmarshal(b, &interfaceType) 6166 if err != nil { 6167 return nil, err 6168 } 6169 6170 var xxx CloudIntegrationInterface = &interfaceType 6171 6172 return &xxx, nil 6173 case "CloudBaseIntegration": 6174 var interfaceType CloudBaseIntegration 6175 err = json.Unmarshal(b, &interfaceType) 6176 if err != nil { 6177 return nil, err 6178 } 6179 6180 var xxx CloudIntegrationInterface = &interfaceType 6181 6182 return &xxx, nil 6183 case "CloudBillingIntegration": 6184 var interfaceType CloudBillingIntegration 6185 err = json.Unmarshal(b, &interfaceType) 6186 if err != nil { 6187 return nil, err 6188 } 6189 6190 var xxx CloudIntegrationInterface = &interfaceType 6191 6192 return &xxx, nil 6193 case "CloudCloudfrontIntegration": 6194 var interfaceType CloudCloudfrontIntegration 6195 err = json.Unmarshal(b, &interfaceType) 6196 if err != nil { 6197 return nil, err 6198 } 6199 6200 var xxx CloudIntegrationInterface = &interfaceType 6201 6202 return &xxx, nil 6203 case "CloudCloudtrailIntegration": 6204 var interfaceType CloudCloudtrailIntegration 6205 err = json.Unmarshal(b, &interfaceType) 6206 if err != nil { 6207 return nil, err 6208 } 6209 6210 var xxx CloudIntegrationInterface = &interfaceType 6211 6212 return &xxx, nil 6213 case "CloudDynamodbIntegration": 6214 var interfaceType CloudDynamodbIntegration 6215 err = json.Unmarshal(b, &interfaceType) 6216 if err != nil { 6217 return nil, err 6218 } 6219 6220 var xxx CloudIntegrationInterface = &interfaceType 6221 6222 return &xxx, nil 6223 case "CloudEbsIntegration": 6224 var interfaceType CloudEbsIntegration 6225 err = json.Unmarshal(b, &interfaceType) 6226 if err != nil { 6227 return nil, err 6228 } 6229 6230 var xxx CloudIntegrationInterface = &interfaceType 6231 6232 return &xxx, nil 6233 case "CloudEc2Integration": 6234 var interfaceType CloudEc2Integration 6235 err = json.Unmarshal(b, &interfaceType) 6236 if err != nil { 6237 return nil, err 6238 } 6239 6240 var xxx CloudIntegrationInterface = &interfaceType 6241 6242 return &xxx, nil 6243 case "CloudEcsIntegration": 6244 var interfaceType CloudEcsIntegration 6245 err = json.Unmarshal(b, &interfaceType) 6246 if err != nil { 6247 return nil, err 6248 } 6249 6250 var xxx CloudIntegrationInterface = &interfaceType 6251 6252 return &xxx, nil 6253 case "CloudEfsIntegration": 6254 var interfaceType CloudEfsIntegration 6255 err = json.Unmarshal(b, &interfaceType) 6256 if err != nil { 6257 return nil, err 6258 } 6259 6260 var xxx CloudIntegrationInterface = &interfaceType 6261 6262 return &xxx, nil 6263 case "CloudElasticacheIntegration": 6264 var interfaceType CloudElasticacheIntegration 6265 err = json.Unmarshal(b, &interfaceType) 6266 if err != nil { 6267 return nil, err 6268 } 6269 6270 var xxx CloudIntegrationInterface = &interfaceType 6271 6272 return &xxx, nil 6273 case "CloudElasticbeanstalkIntegration": 6274 var interfaceType CloudElasticbeanstalkIntegration 6275 err = json.Unmarshal(b, &interfaceType) 6276 if err != nil { 6277 return nil, err 6278 } 6279 6280 var xxx CloudIntegrationInterface = &interfaceType 6281 6282 return &xxx, nil 6283 case "CloudElasticsearchIntegration": 6284 var interfaceType CloudElasticsearchIntegration 6285 err = json.Unmarshal(b, &interfaceType) 6286 if err != nil { 6287 return nil, err 6288 } 6289 6290 var xxx CloudIntegrationInterface = &interfaceType 6291 6292 return &xxx, nil 6293 case "CloudElbIntegration": 6294 var interfaceType CloudElbIntegration 6295 err = json.Unmarshal(b, &interfaceType) 6296 if err != nil { 6297 return nil, err 6298 } 6299 6300 var xxx CloudIntegrationInterface = &interfaceType 6301 6302 return &xxx, nil 6303 case "CloudEmrIntegration": 6304 var interfaceType CloudEmrIntegration 6305 err = json.Unmarshal(b, &interfaceType) 6306 if err != nil { 6307 return nil, err 6308 } 6309 6310 var xxx CloudIntegrationInterface = &interfaceType 6311 6312 return &xxx, nil 6313 case "CloudGcpAppengineIntegration": 6314 var interfaceType CloudGcpAppengineIntegration 6315 err = json.Unmarshal(b, &interfaceType) 6316 if err != nil { 6317 return nil, err 6318 } 6319 6320 var xxx CloudIntegrationInterface = &interfaceType 6321 6322 return &xxx, nil 6323 case "CloudGcpBigqueryIntegration": 6324 var interfaceType CloudGcpBigqueryIntegration 6325 err = json.Unmarshal(b, &interfaceType) 6326 if err != nil { 6327 return nil, err 6328 } 6329 6330 var xxx CloudIntegrationInterface = &interfaceType 6331 6332 return &xxx, nil 6333 case "CloudGcpBigtableIntegration": 6334 var interfaceType CloudGcpBigtableIntegration 6335 err = json.Unmarshal(b, &interfaceType) 6336 if err != nil { 6337 return nil, err 6338 } 6339 6340 var xxx CloudIntegrationInterface = &interfaceType 6341 6342 return &xxx, nil 6343 case "CloudGcpComposerIntegration": 6344 var interfaceType CloudGcpComposerIntegration 6345 err = json.Unmarshal(b, &interfaceType) 6346 if err != nil { 6347 return nil, err 6348 } 6349 6350 var xxx CloudIntegrationInterface = &interfaceType 6351 6352 return &xxx, nil 6353 case "CloudGcpDataflowIntegration": 6354 var interfaceType CloudGcpDataflowIntegration 6355 err = json.Unmarshal(b, &interfaceType) 6356 if err != nil { 6357 return nil, err 6358 } 6359 6360 var xxx CloudIntegrationInterface = &interfaceType 6361 6362 return &xxx, nil 6363 case "CloudGcpDataprocIntegration": 6364 var interfaceType CloudGcpDataprocIntegration 6365 err = json.Unmarshal(b, &interfaceType) 6366 if err != nil { 6367 return nil, err 6368 } 6369 6370 var xxx CloudIntegrationInterface = &interfaceType 6371 6372 return &xxx, nil 6373 case "CloudGcpDatastoreIntegration": 6374 var interfaceType CloudGcpDatastoreIntegration 6375 err = json.Unmarshal(b, &interfaceType) 6376 if err != nil { 6377 return nil, err 6378 } 6379 6380 var xxx CloudIntegrationInterface = &interfaceType 6381 6382 return &xxx, nil 6383 case "CloudGcpFirebasedatabaseIntegration": 6384 var interfaceType CloudGcpFirebasedatabaseIntegration 6385 err = json.Unmarshal(b, &interfaceType) 6386 if err != nil { 6387 return nil, err 6388 } 6389 6390 var xxx CloudIntegrationInterface = &interfaceType 6391 6392 return &xxx, nil 6393 case "CloudGcpFirebasehostingIntegration": 6394 var interfaceType CloudGcpFirebasehostingIntegration 6395 err = json.Unmarshal(b, &interfaceType) 6396 if err != nil { 6397 return nil, err 6398 } 6399 6400 var xxx CloudIntegrationInterface = &interfaceType 6401 6402 return &xxx, nil 6403 case "CloudGcpFirebasestorageIntegration": 6404 var interfaceType CloudGcpFirebasestorageIntegration 6405 err = json.Unmarshal(b, &interfaceType) 6406 if err != nil { 6407 return nil, err 6408 } 6409 6410 var xxx CloudIntegrationInterface = &interfaceType 6411 6412 return &xxx, nil 6413 case "CloudGcpFirestoreIntegration": 6414 var interfaceType CloudGcpFirestoreIntegration 6415 err = json.Unmarshal(b, &interfaceType) 6416 if err != nil { 6417 return nil, err 6418 } 6419 6420 var xxx CloudIntegrationInterface = &interfaceType 6421 6422 return &xxx, nil 6423 case "CloudGcpFunctionsIntegration": 6424 var interfaceType CloudGcpFunctionsIntegration 6425 err = json.Unmarshal(b, &interfaceType) 6426 if err != nil { 6427 return nil, err 6428 } 6429 6430 var xxx CloudIntegrationInterface = &interfaceType 6431 6432 return &xxx, nil 6433 case "CloudGcpInterconnectIntegration": 6434 var interfaceType CloudGcpInterconnectIntegration 6435 err = json.Unmarshal(b, &interfaceType) 6436 if err != nil { 6437 return nil, err 6438 } 6439 6440 var xxx CloudIntegrationInterface = &interfaceType 6441 6442 return &xxx, nil 6443 case "CloudGcpKubernetesIntegration": 6444 var interfaceType CloudGcpKubernetesIntegration 6445 err = json.Unmarshal(b, &interfaceType) 6446 if err != nil { 6447 return nil, err 6448 } 6449 6450 var xxx CloudIntegrationInterface = &interfaceType 6451 6452 return &xxx, nil 6453 case "CloudGcpLoadbalancingIntegration": 6454 var interfaceType CloudGcpLoadbalancingIntegration 6455 err = json.Unmarshal(b, &interfaceType) 6456 if err != nil { 6457 return nil, err 6458 } 6459 6460 var xxx CloudIntegrationInterface = &interfaceType 6461 6462 return &xxx, nil 6463 case "CloudGcpMemcacheIntegration": 6464 var interfaceType CloudGcpMemcacheIntegration 6465 err = json.Unmarshal(b, &interfaceType) 6466 if err != nil { 6467 return nil, err 6468 } 6469 6470 var xxx CloudIntegrationInterface = &interfaceType 6471 6472 return &xxx, nil 6473 case "CloudGcpPubsubIntegration": 6474 var interfaceType CloudGcpPubsubIntegration 6475 err = json.Unmarshal(b, &interfaceType) 6476 if err != nil { 6477 return nil, err 6478 } 6479 6480 var xxx CloudIntegrationInterface = &interfaceType 6481 6482 return &xxx, nil 6483 case "CloudGcpRedisIntegration": 6484 var interfaceType CloudGcpRedisIntegration 6485 err = json.Unmarshal(b, &interfaceType) 6486 if err != nil { 6487 return nil, err 6488 } 6489 6490 var xxx CloudIntegrationInterface = &interfaceType 6491 6492 return &xxx, nil 6493 case "CloudGcpRouterIntegration": 6494 var interfaceType CloudGcpRouterIntegration 6495 err = json.Unmarshal(b, &interfaceType) 6496 if err != nil { 6497 return nil, err 6498 } 6499 6500 var xxx CloudIntegrationInterface = &interfaceType 6501 6502 return &xxx, nil 6503 case "CloudGcpRunIntegration": 6504 var interfaceType CloudGcpRunIntegration 6505 err = json.Unmarshal(b, &interfaceType) 6506 if err != nil { 6507 return nil, err 6508 } 6509 6510 var xxx CloudIntegrationInterface = &interfaceType 6511 6512 return &xxx, nil 6513 case "CloudGcpSpannerIntegration": 6514 var interfaceType CloudGcpSpannerIntegration 6515 err = json.Unmarshal(b, &interfaceType) 6516 if err != nil { 6517 return nil, err 6518 } 6519 6520 var xxx CloudIntegrationInterface = &interfaceType 6521 6522 return &xxx, nil 6523 case "CloudGcpSqlIntegration": 6524 var interfaceType CloudGcpSqlIntegration 6525 err = json.Unmarshal(b, &interfaceType) 6526 if err != nil { 6527 return nil, err 6528 } 6529 6530 var xxx CloudIntegrationInterface = &interfaceType 6531 6532 return &xxx, nil 6533 case "CloudGcpStorageIntegration": 6534 var interfaceType CloudGcpStorageIntegration 6535 err = json.Unmarshal(b, &interfaceType) 6536 if err != nil { 6537 return nil, err 6538 } 6539 6540 var xxx CloudIntegrationInterface = &interfaceType 6541 6542 return &xxx, nil 6543 case "CloudGcpVmsIntegration": 6544 var interfaceType CloudGcpVmsIntegration 6545 err = json.Unmarshal(b, &interfaceType) 6546 if err != nil { 6547 return nil, err 6548 } 6549 6550 var xxx CloudIntegrationInterface = &interfaceType 6551 6552 return &xxx, nil 6553 case "CloudGcpVpcaccessIntegration": 6554 var interfaceType CloudGcpVpcaccessIntegration 6555 err = json.Unmarshal(b, &interfaceType) 6556 if err != nil { 6557 return nil, err 6558 } 6559 6560 var xxx CloudIntegrationInterface = &interfaceType 6561 6562 return &xxx, nil 6563 case "CloudHealthIntegration": 6564 var interfaceType CloudHealthIntegration 6565 err = json.Unmarshal(b, &interfaceType) 6566 if err != nil { 6567 return nil, err 6568 } 6569 6570 var xxx CloudIntegrationInterface = &interfaceType 6571 6572 return &xxx, nil 6573 case "CloudIamIntegration": 6574 var interfaceType CloudIamIntegration 6575 err = json.Unmarshal(b, &interfaceType) 6576 if err != nil { 6577 return nil, err 6578 } 6579 6580 var xxx CloudIntegrationInterface = &interfaceType 6581 6582 return &xxx, nil 6583 case "CloudIotIntegration": 6584 var interfaceType CloudIotIntegration 6585 err = json.Unmarshal(b, &interfaceType) 6586 if err != nil { 6587 return nil, err 6588 } 6589 6590 var xxx CloudIntegrationInterface = &interfaceType 6591 6592 return &xxx, nil 6593 case "CloudKinesisFirehoseIntegration": 6594 var interfaceType CloudKinesisFirehoseIntegration 6595 err = json.Unmarshal(b, &interfaceType) 6596 if err != nil { 6597 return nil, err 6598 } 6599 6600 var xxx CloudIntegrationInterface = &interfaceType 6601 6602 return &xxx, nil 6603 case "CloudKinesisIntegration": 6604 var interfaceType CloudKinesisIntegration 6605 err = json.Unmarshal(b, &interfaceType) 6606 if err != nil { 6607 return nil, err 6608 } 6609 6610 var xxx CloudIntegrationInterface = &interfaceType 6611 6612 return &xxx, nil 6613 case "CloudLambdaIntegration": 6614 var interfaceType CloudLambdaIntegration 6615 err = json.Unmarshal(b, &interfaceType) 6616 if err != nil { 6617 return nil, err 6618 } 6619 6620 var xxx CloudIntegrationInterface = &interfaceType 6621 6622 return &xxx, nil 6623 case "CloudRdsIntegration": 6624 var interfaceType CloudRdsIntegration 6625 err = json.Unmarshal(b, &interfaceType) 6626 if err != nil { 6627 return nil, err 6628 } 6629 6630 var xxx CloudIntegrationInterface = &interfaceType 6631 6632 return &xxx, nil 6633 case "CloudRedshiftIntegration": 6634 var interfaceType CloudRedshiftIntegration 6635 err = json.Unmarshal(b, &interfaceType) 6636 if err != nil { 6637 return nil, err 6638 } 6639 6640 var xxx CloudIntegrationInterface = &interfaceType 6641 6642 return &xxx, nil 6643 case "CloudRoute53Integration": 6644 var interfaceType CloudRoute53Integration 6645 err = json.Unmarshal(b, &interfaceType) 6646 if err != nil { 6647 return nil, err 6648 } 6649 6650 var xxx CloudIntegrationInterface = &interfaceType 6651 6652 return &xxx, nil 6653 case "CloudS3Integration": 6654 var interfaceType CloudS3Integration 6655 err = json.Unmarshal(b, &interfaceType) 6656 if err != nil { 6657 return nil, err 6658 } 6659 6660 var xxx CloudIntegrationInterface = &interfaceType 6661 6662 return &xxx, nil 6663 case "CloudSesIntegration": 6664 var interfaceType CloudSesIntegration 6665 err = json.Unmarshal(b, &interfaceType) 6666 if err != nil { 6667 return nil, err 6668 } 6669 6670 var xxx CloudIntegrationInterface = &interfaceType 6671 6672 return &xxx, nil 6673 case "CloudSnsIntegration": 6674 var interfaceType CloudSnsIntegration 6675 err = json.Unmarshal(b, &interfaceType) 6676 if err != nil { 6677 return nil, err 6678 } 6679 6680 var xxx CloudIntegrationInterface = &interfaceType 6681 6682 return &xxx, nil 6683 case "CloudSqsIntegration": 6684 var interfaceType CloudSqsIntegration 6685 err = json.Unmarshal(b, &interfaceType) 6686 if err != nil { 6687 return nil, err 6688 } 6689 6690 var xxx CloudIntegrationInterface = &interfaceType 6691 6692 return &xxx, nil 6693 case "CloudTrustedadvisorIntegration": 6694 var interfaceType CloudTrustedadvisorIntegration 6695 err = json.Unmarshal(b, &interfaceType) 6696 if err != nil { 6697 return nil, err 6698 } 6699 6700 var xxx CloudIntegrationInterface = &interfaceType 6701 6702 return &xxx, nil 6703 case "CloudVpcIntegration": 6704 var interfaceType CloudVpcIntegration 6705 err = json.Unmarshal(b, &interfaceType) 6706 if err != nil { 6707 return nil, err 6708 } 6709 6710 var xxx CloudIntegrationInterface = &interfaceType 6711 6712 return &xxx, nil 6713 } 6714 } else { 6715 keys := []string{} 6716 for k := range rawMessageCloudIntegration { 6717 keys = append(keys, k) 6718 } 6719 return nil, fmt.Errorf("interface CloudIntegration did not include a __typename field for inspection: %s", keys) 6720 } 6721 6722 return nil, fmt.Errorf("interface CloudIntegration was not matched against all PossibleTypes: %s", typeName) 6723 } 6724 6725 // CloudProvider - A cloud services provider. 6726 type CloudProviderInterface interface { 6727 ImplementsCloudProvider() 6728 } 6729 6730 // UnmarshalCloudProviderInterface unmarshals the interface into the correct type 6731 // based on __typename provided by GraphQL 6732 func UnmarshalCloudProviderInterface(b []byte) (*CloudProviderInterface, error) { 6733 var err error 6734 6735 var rawMessageCloudProvider map[string]*json.RawMessage 6736 err = json.Unmarshal(b, &rawMessageCloudProvider) 6737 if err != nil { 6738 return nil, err 6739 } 6740 6741 // Nothing to unmarshal 6742 if len(rawMessageCloudProvider) < 1 { 6743 return nil, nil 6744 } 6745 6746 var typeName string 6747 6748 if rawTypeName, ok := rawMessageCloudProvider["__typename"]; ok { 6749 err = json.Unmarshal(*rawTypeName, &typeName) 6750 if err != nil { 6751 return nil, err 6752 } 6753 6754 switch typeName { 6755 case "CloudAwsGovCloudProvider": 6756 var interfaceType CloudAwsGovCloudProvider 6757 err = json.Unmarshal(b, &interfaceType) 6758 if err != nil { 6759 return nil, err 6760 } 6761 6762 var xxx CloudProviderInterface = &interfaceType 6763 6764 return &xxx, nil 6765 case "CloudAwsProvider": 6766 var interfaceType CloudAwsProvider 6767 err = json.Unmarshal(b, &interfaceType) 6768 if err != nil { 6769 return nil, err 6770 } 6771 6772 var xxx CloudProviderInterface = &interfaceType 6773 6774 return &xxx, nil 6775 case "CloudBaseProvider": 6776 var interfaceType CloudBaseProvider 6777 err = json.Unmarshal(b, &interfaceType) 6778 if err != nil { 6779 return nil, err 6780 } 6781 6782 var xxx CloudProviderInterface = &interfaceType 6783 6784 return &xxx, nil 6785 case "CloudGcpProvider": 6786 var interfaceType CloudGcpProvider 6787 err = json.Unmarshal(b, &interfaceType) 6788 if err != nil { 6789 return nil, err 6790 } 6791 6792 var xxx CloudProviderInterface = &interfaceType 6793 6794 return &xxx, nil 6795 } 6796 } else { 6797 keys := []string{} 6798 for k := range rawMessageCloudProvider { 6799 keys = append(keys, k) 6800 } 6801 return nil, fmt.Errorf("interface CloudProvider did not include a __typename field for inspection: %s", keys) 6802 } 6803 6804 return nil, fmt.Errorf("interface CloudProvider was not matched against all PossibleTypes: %s", typeName) 6805 }