Class: DatadogAPIClient::V2::CloudInventorySyncConfigsAPI

Inherits:
Object
  • Object
show all
Defined in:
lib/datadog_api_client/v2/api/cloud_inventory_sync_configs_api.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ CloudInventorySyncConfigsAPI

Returns a new instance of CloudInventorySyncConfigsAPI.



22
23
24
# File 'lib/datadog_api_client/v2/api/cloud_inventory_sync_configs_api.rb', line 22

def initialize(api_client = DatadogAPIClient::APIClient.default)
  @api_client = api_client
end

Instance Attribute Details

#api_clientObject

Returns the value of attribute api_client.



20
21
22
# File 'lib/datadog_api_client/v2/api/cloud_inventory_sync_configs_api.rb', line 20

def api_client
  @api_client
end

Instance Method Details

#upsert_sync_config(body, opts = {}) ⇒ Object

Create or update a sync configuration.



29
30
31
32
# File 'lib/datadog_api_client/v2/api/cloud_inventory_sync_configs_api.rb', line 29

def upsert_sync_config(body, opts = {})
  data, _status_code, _headers = upsert_sync_config_with_http_info(body, opts)
  data
end

#upsert_sync_config_with_http_info(body, opts = {}) ⇒ Array<(CloudInventorySyncConfigResponse, Integer, Hash)>

Create or update a sync configuration.

Create or update a cloud inventory sync configuration. Specify the cloud provider in data.id and provider-specific settings under data.attributes. This endpoint uses an upsert model.

Parameters:

Returns:



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# File 'lib/datadog_api_client/v2/api/cloud_inventory_sync_configs_api.rb', line 42

def upsert_sync_config_with_http_info(body, opts = {})
  unstable_enabled = @api_client.config.unstable_operations["v2.upsert_sync_config".to_sym]
  if unstable_enabled
    @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.upsert_sync_config")
  else
    raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.upsert_sync_config"))
  end

  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: CloudInventorySyncConfigsAPI.upsert_sync_config ...'
  end
  # verify the required parameter 'body' is set
  if @api_client.config.client_side_validation && body.nil?
    fail ArgumentError, "Missing the required parameter 'body' when calling CloudInventorySyncConfigsAPI.upsert_sync_config"
  end
  # resource path
  local_var_path = '/api/v2/cloudinventoryservice/syncconfigs'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(body)

  # return_type
  return_type = opts[:debug_return_type] || 'CloudInventorySyncConfigResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]

  new_options = opts.merge(
    :operation => :upsert_sync_config,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type,
    :api_version => "V2"
  )

  data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: CloudInventorySyncConfigsAPI#upsert_sync_config\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end