cloudforet-apis
  • README
  • content
    • en
      • Cloudforet API Documentation
      • board
        • _index
        • v1
          • Board
          • Post
          • v1
      • config
        • _index
        • v1
          • DomainConfig
          • PublicConfig
          • UserConfig
          • WorkspaceConfig
          • v1
      • core
        • _index
        • v1
          • Handler
          • Query
          • ServerInfo
          • v1
        • v2
          • Handler
          • Plugin
          • Query
          • v2
      • cost_analysis
        • _index
        • plugin
          • Cost
          • DataSource
          • Job
          • plugin
        • v1
          • Budget
          • BudgetUsage
          • Cost
          • CostQuerySet
          • CostReport
          • CostReportConfig
          • CostReportData
          • CustomWidget
          • DataSource
          • DataSourceAccount
          • DataSourceRule
          • ExchangeRate
          • Job
          • JobTask
          • PublicDashboard
          • Schedule
          • UnifiedCost
          • UserDashboard
          • v1
      • dashboard
        • _index
        • v1
          • CustomWidget
          • Dashboard
          • DomainDashboard
          • PrivateDashboard
          • PrivateDataTable
          • PrivateFolder
          • PrivateWidget
          • ProjectDashboard
          • PublicDashboard
          • PublicDataTable
          • PublicFolder
          • PublicWidget
          • v1
      • file_manager
        • _index
        • v1
          • File
          • PublicFile
          • v1
      • identity
        • _index
        • plugin
          • AccountCollector
          • Auth
          • ExternalAuth
          • plugin
        • v1
          • ApiKey
          • Authorization
          • Domain
          • DomainOwner
          • Endpoint
          • Policy
          • Project
          • ProjectGroup
          • Provider
          • Role
          • RoleBinding
          • ServiceAccount
          • Token
          • User
          • v1
        • v2
          • Agent
          • ApiKey
          • App
          • Authorization
          • Domain
          • Endpoint
          • ExternalAuth
          • Job
          • Package
          • Policy
          • Project
          • ProjectGroup
          • Provider
          • Role
          • RoleBinding
          • Schema
          • ServiceAccount
          • System
          • Token
          • TrustedAccount
          • TrustedServiceAccount
          • User
          • UserGroup
          • UserProfile
          • Workspace
          • WorkspaceGroup
          • WorkspaceGroupDetails
          • WorkspaceGroupUser
          • WorkspaceUser
          • v2
      • inventory
        • _index
        • plugin
          • Collector
          • Job
          • plugin
        • v1
          • ChangeHistory
          • CloudService
          • CloudServiceQuerySet
          • CloudServiceReport
          • CloudServiceStats
          • CloudServiceType
          • Collector
          • CollectorRule
          • Job
          • JobTask
          • Metric
          • MetricData
          • MetricExample
          • Namespace
          • Note
          • Region
          • ResourceGroup
          • v1
        • v2
          • Region
          • v2
      • monitoring
        • _index
        • plugin
          • DataSource
          • Event
          • Log
          • Metric
          • Webhook
          • plugin
        • v1
          • Alert
          • DataSource
          • EscalationPolicy
          • Event
          • EventRule
          • Log
          • MaintenanceWindow
          • Metric
          • Note
          • ProjectAlertConfig
          • Webhook
          • v1
      • mzc_service_api
        • _index
        • v1
          • Contract
          • Offering
          • Organization
          • v1
      • notification
        • _index
        • plugin
          • Notification
          • Protocol
          • plugin
        • v1
          • Notification
          • NotificationUsage
          • ProjectChannel
          • Protocol
          • Quota
          • UserChannel
          • v1
      • opsflow
        • _index
        • v1
          • Comment
          • Event
          • Task
          • TaskCategory
          • TaskType
          • v1
      • plugin
        • _index
        • v1
          • Plugin
          • Supervisor
          • v1
      • repository
        • _index
        • v1
          • DashboardTemplate
          • Plugin
          • Policy
          • Repository
          • Schema
          • v1
        • v2
          • Common
          • Provider
          • RemoteRepository
          • Schema
          • v2
      • sample
        • _index
        • v1
          • Helloworld
          • v1
      • search
        • _index
        • v1
          • Resource
          • v1
      • secret
        • _index
        • v1
          • Secret
          • SecretGroup
          • TrustedSecret
          • UserSecret
          • v1
      • statistics
        • _index
        • plugin
          • Storage
          • plugin
        • v1
          • History
          • Resource
          • Schedule
          • Storage
          • v1
Powered by GitBook
On this page
  • DataSource
  • register
  • update
  • update_permissions
  • update_plugin
  • update_secret_data
  • verify_plugin
  • enable
  • disable
  • deregister
  • sync
  • get
  • list
  • stat
  • Message
  • DataSourceInfo
  • DataSourceQuery
  • DataSourceRequest
  • DataSourceStatQuery
  • DataSourcesInfo
  • DeregisterDataSourceRequest
  • PluginInfo
  • RegisterDataSourceRequest
  • SecretFilter
  • SyncDataSourceRequest
  • UpdateDataSourcePermissionsRequest
  • UpdateDataSourcePluginRequest
  • UpdateDataSourceRequest
  • UpdateSecretDataSourceRequest
  1. content
  2. en
  3. cost_analysis
  4. v1

DataSource

A DataSource is a plugin instance collecting external cost data. External cost data consists of raw data and the plugin information used for collection.

Package : spaceone.api.cost_analysis.v1

DataSource

DataSource Methods:

Method
Request
Response

register

Registers a DataSource with information of the plugin to use. Information of the plugin includes version, provider, and upgrade_mode.

POST /cost-analysis/v1/data-source/register

{{< tabs " register " >}}

{{< tab "Request Example" >}}

  • name (string) Required

  • data_source_type (DataSourceType) Required

  • resource_group (ResourceGroup) Required

  • provider (string)

  • secret_type (SecretType)

  • secret_filter (SecretFilter)

  • template (Struct)

  • plugin_info (PluginInfo)

  • tags (Struct)

  • workspace_id (string)

{{< highlight json >}} { "name": "AWS HyperBilling Data Source test", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "conditions_policy": "ALWAYS", "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "conditions": [], "tags": {}, "name": "match_service_account" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "tags": {"a": "b"} } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

update

Updates a specific DataSource. You can make changes in DataSource settings, including name and tags.

POST /cost-analysis/v1/data-source/update

{{< tabs " update " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

  • name (string)

  • secret_filter (SecretFilter)

  • template (Struct)

  • tags (Struct)

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test2", "tags": { "type": "test" } } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

update_permissions

POST /cost-analysis/v1/data-source/update-permissions

{{< tabs " update_permissions " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

  • permissions (Struct) Required

{{< highlight json >}} { "data_source_id" : "ds-12331222", "permissions" : {"deny": ["data.PayAsYouGo", "data.ActualCost"]} } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

update_plugin

Updates the plugin of a specific DataSource. This method resets the plugin data in the DataSource to update the metadata.

POST /cost-analysis/v1/data-source/update-plugin

{{< tabs " update_plugin " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

  • version (string)

  • options (Struct)

  • upgrade_mode (UpgradeMode)

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "version": "1.0.4", "options": {}, "upgrade_mode": "AUTO" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

update_secret_data

Updates the secret data of plugin for DataSource. This method updates the secret data in the DataSource to update the secret_data.

POST /cost-analysis/v1/data-source/update-secret-data

{{< tabs " update_secret_data " >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

verify_plugin

Verifies the plugin of a specific DataSource. This method validates the plugin data, version and endpoint.

POST /cost-analysis/v1/data-source/verify-plugin

{{< tabs " verify_plugin " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

enable

Enables a specific DataSource. By enabling a DataSource, you can communicate with an external cloud service via the plugin.

POST /cost-analysis/v1/data-source/enable

{{< tabs " enable " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

disable

Disables a specific DataSource. By disabling a DataSource, you can block communication with an external cloud service via the plugin.

POST /cost-analysis/v1/data-source/disable

{{< tabs " disable " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

deregister

Deregisters and deletes a specific DataSource. You must specify the data_source_id of the DataSource to deregister.

POST /cost-analysis/v1/data-source/deregister

{{< tabs " deregister " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

  • cascade_delete_cost (bool)

    Default value is true. If true delete all cost data related to data_source_id

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "cascade_delete_cost": true, "domain_id": "domain-085d1e872789" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

sync

Manually runs a specific DataSource to collect the cost data. This method is to get up-to-date cost data.

POST /cost-analysis/v1/data-source/sync

get

Gets a specific DataSource. Prints detailed information about the DataSource, including name, state, and plugin_info.

POST /cost-analysis/v1/data-source/get

{{< tabs " get " >}}

{{< tab "Request Example" >}}

  • data_source_id (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789" } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

{{< highlight json >}} { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

list

Gets a list of all DataSources. You can use a query to get a filtered list of DataSources.

POST /cost-analysis/v1/data-source/list

{{< tabs " list " >}}

{{< tab "Request Example" >}}

  • workspace_id (string) Required

  • query (Query)

  • data_source_id (string)

  • name (string)

  • state (string)

  • data_source_type (DataSourceType)

  • provider (string)

  • connected_workspace_id (string)

{{< highlight json >}} { "query": {} } {{< /highlight >}} {{< /tab >}}

{{< tab "Response Example" >}}

  • results (DataSourceInfo) Repeated Required

  • total_count (int32) Required

{{< highlight json >}} { "results": [ { "data_source_id": "ds-085d1e872789", "name": "AWS HyperBilling Data Source test", "state": "ENABLED", "data_source_type": "EXTERNAL", "plugin_info": { "plugin_id": "plugin-aws-hyperbilling-cost-datasource", "version": "1.0.4", "options": {}, "metadata": { "data_source_rules": [ { "options": { "stop_processing": true }, "actions": { "match_service_account": { "source": "account", "target": "data.account_id" } }, "domain_id": "domain-58010aa2e451", "conditions": [], "name": "match_service_account", "tags": {}, "data_source_id": "ds-085d1e872789", "conditions_policy": "ALWAYS" } ] }, "secret_id": "secret-ca134639483", "upgrade_mode": "AUTO" }, "template": {}, "tags": { "a": "b" }, "cost_tag_keys": [ "Name", "Environment", "Role", "Service" ], "cost_additional_info_keys": [ "Instance Type", "Usage Type Details" ], "cost_data_keys": [ "AmortizedCost", "BlendedCost", ] "domain_id": "domain-58010aa2e451", "created_at": "2022-07-19T10:58:36.080Z" } ], "total_count": 2 } {{< /highlight >}} {{< /tab >}}

{{< /tabs >}}

stat

POST /cost-analysis/v1/data-source/stat

Message

DataSourceInfo

  • data_source_id (string) Required

  • name (string) Required

  • state (State) Required

  • data_source_type (DataSourceType) Required

  • permissions (Struct) Required

  • provider (string) Required

  • secret_type (SecretType) Required

  • secret_filter (SecretFilter) Required

  • plugin_info (PluginInfo) Required

  • template (Struct) Required

  • tags (Struct) Required

  • cost_tag_keys (string) Repeated Required

  • cost_additional_info_keys (string) Repeated Required

  • cost_data_keys (string) Repeated Required

  • data_source_account_count (int32) Required

  • connected_workspace_count (int32) Required

  • resource_group (ResourceGroup) Required

  • domain_id (string) Required

  • workspace_id (string) Required

  • created_at (string) Required

  • updated_at (string) Required

  • last_synchronized_at (string) Required

DataSourceQuery

  • workspace_id (string) Required

  • query (Query)

  • data_source_id (string)

  • name (string)

  • state (string)

  • data_source_type (DataSourceType)

  • provider (string)

  • connected_workspace_id (string)

DataSourceRequest

  • data_source_id (string) Required

DataSourceStatQuery

  • query (StatisticsQuery) Required

DataSourcesInfo

  • results (DataSourceInfo) Repeated Required

  • total_count (int32) Required

DeregisterDataSourceRequest

  • data_source_id (string) Required

  • cascade_delete_cost (bool)

    Default value is true. If true delete all cost data related to data_source_id

PluginInfo

  • plugin_id (string) Required

  • version (string) Required

  • options (Struct) Required

  • metadata (Struct) Required

  • secret_data (Struct) Required

  • schema_id (string) Required

  • secret_id (string) Required

  • upgrade_mode (UpgradeMode) Required

RegisterDataSourceRequest

  • name (string) Required

  • data_source_type (DataSourceType) Required

  • resource_group (ResourceGroup) Required

  • provider (string)

  • secret_type (SecretType)

  • secret_filter (SecretFilter)

  • template (Struct)

  • plugin_info (PluginInfo)

  • tags (Struct)

  • workspace_id (string)

SecretFilter

  • state (SecretFilterState) Required

  • secrets (string) Repeated Required

  • service_accounts (string) Repeated Required

  • schemas (string) Repeated Required

SyncDataSourceRequest

  • data_source_id (string) Required

  • start (string)

  • no_preload_cache (bool)

UpdateDataSourcePermissionsRequest

  • data_source_id (string) Required

  • permissions (Struct) Required

UpdateDataSourcePluginRequest

  • data_source_id (string) Required

  • version (string)

  • options (Struct)

  • upgrade_mode (UpgradeMode)

UpdateDataSourceRequest

  • data_source_id (string) Required

  • name (string)

  • secret_filter (SecretFilter)

  • template (Struct)

  • tags (Struct)

UpdateSecretDataSourceRequest

  • data_source_id (string) Required

  • secret_schema_id (string) Required

  • secret_data (Struct) Required

PreviousCustomWidgetNextDataSourceAccount

Last updated 11 months ago

RegisterDataSourceRequest
UpdateDataSourceRequest
UpdateDataSourcePermissionsRequest
UpdateDataSourcePluginRequest
DataSourceRequest
DataSourceRequest
DataSourceRequest
DeregisterDataSourceRequest
DataSourceRequest
DataSourceQuery
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourceInfo
DataSourcesInfo
register
RegisterDataSourceRequest
DataSourceInfo
update
UpdateDataSourceRequest
DataSourceInfo
update_permissions
UpdateDataSourcePermissionsRequest
DataSourceInfo
update_plugin
UpdateDataSourcePluginRequest
DataSourceInfo
update_secret_data
UpdateSecretDataSourceRequest
DataSourceInfo
verify_plugin
DataSourceRequest
Empty
enable
DataSourceRequest
DataSourceInfo
disable
DataSourceRequest
DataSourceInfo
deregister
DeregisterDataSourceRequest
Empty
sync
SyncDataSourceRequest
JobInfo
get
DataSourceRequest
DataSourceInfo
list
DataSourceQuery
DataSourcesInfo
stat
DataSourceStatQuery
Struct