Class: HubSpotSDK::Resources::Settings::Currencies::ExchangeRates

Inherits:
Object
  • Object
show all
Defined in:
lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb,
lib/hubspot_sdk/resources/settings/currencies/exchange_rates/batch.rb

Defined Under Namespace

Classes: Batch

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ ExchangeRates

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of ExchangeRates.

Parameters:



183
184
185
186
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 183

def initialize(client:)
  @client = client
  @batch = HubSpotSDK::Resources::Settings::Currencies::ExchangeRates::Batch.new(client: client)
end

Instance Attribute Details

#batchHubSpotSDK::Resources::Settings::Currencies::ExchangeRates::Batch (readonly)



9
10
11
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 9

def batch
  @batch
end

Instance Method Details

#create_exchange_rate(conversion_rate:, from_currency_code:, effective_at: nil, request_options: {}) ⇒ HubSpotSDK::Models::Settings::ExchangeRate

Some parameter documentations has been truncated, see Models::Settings::Currencies::ExchangeRateCreateExchangeRateParams for more details.

Create a new exchange rate with specified conversion rate and currency codes.

Parameters:

Returns:

See Also:



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 30

def create_exchange_rate(params)
  parsed, options =
    HubSpotSDK::Settings::Currencies::ExchangeRateCreateExchangeRateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "settings/currencies/2026-03/exchange-rates",
    body: parsed,
    model: HubSpotSDK::Settings::ExchangeRate,
    options: options
  )
end

#get_exchange_rate_by_id(exchange_rate_id, request_options: {}) ⇒ HubSpotSDK::Models::Settings::ExchangeRate

Retrieve the details for a specific exchange rate specified by its ID.

Parameters:

Returns:

See Also:



52
53
54
55
56
57
58
59
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 52

def get_exchange_rate_by_id(exchange_rate_id, params = {})
  @client.request(
    method: :get,
    path: ["settings/currencies/2026-03/exchange-rates/%1$s", exchange_rate_id],
    model: HubSpotSDK::Settings::ExchangeRate,
    options: params[:request_options]
  )
end

#list_current_exchange_rates(request_options: {}) ⇒ HubSpotSDK::Models::Settings::CollectionResponseExchangeRateNoPaging

Retrieve all current exchange rates for all currency pairs.



70
71
72
73
74
75
76
77
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 70

def list_current_exchange_rates(params = {})
  @client.request(
    method: :get,
    path: "settings/currencies/2026-03/exchange-rates/current",
    model: HubSpotSDK::Settings::CollectionResponseExchangeRateNoPaging,
    options: params[:request_options]
  )
end

#list_exchange_rates(after: nil, from_currency_code: nil, limit: nil, to_currency_code: nil, request_options: {}) ⇒ HubSpotSDK::Internal::Page<HubSpotSDK::Models::Settings::ExchangeRate>

Some parameter documentations has been truncated, see Models::Settings::Currencies::ExchangeRateListExchangeRatesParams for more details.

Get a list of exchange rates

Parameters:

Returns:

See Also:



100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 100

def list_exchange_rates(params = {})
  parsed, options =
    HubSpotSDK::Settings::Currencies::ExchangeRateListExchangeRatesParams.dump_request(params)
  query = HubSpotSDK::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "settings/currencies/2026-03/exchange-rates",
    query: query.transform_keys(
      from_currency_code: "fromCurrencyCode",
      to_currency_code: "toCurrencyCode"
    ),
    page: HubSpotSDK::Internal::Page,
    model: HubSpotSDK::Settings::ExchangeRate,
    options: options
  )
end

#update_exchange_rate(exchange_rate_id, conversion_rate:, effective_at: nil, request_options: {}) ⇒ HubSpotSDK::Models::Settings::ExchangeRate

Some parameter documentations has been truncated, see Models::Settings::Currencies::ExchangeRateUpdateExchangeRateParams for more details.

Update an existing conversion rate, specified by its ID.

Parameters:

  • exchange_rate_id (String)
  • conversion_rate (Float)

    The updated conversion rate between the to and from currency code of this exchan

  • effective_at (Time)

    The date the exchange rate is in effect.

  • request_options (HubSpotSDK::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



136
137
138
139
140
141
142
143
144
145
146
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 136

def update_exchange_rate(exchange_rate_id, params)
  parsed, options =
    HubSpotSDK::Settings::Currencies::ExchangeRateUpdateExchangeRateParams.dump_request(params)
  @client.request(
    method: :patch,
    path: ["settings/currencies/2026-03/exchange-rates/%1$s", exchange_rate_id],
    body: parsed,
    model: HubSpotSDK::Settings::ExchangeRate,
    options: options
  )
end

#update_visibility(from_currency_code:, to_currency_code:, visible_in_ui:, request_options: {}) ⇒ nil

Some parameter documentations has been truncated, see Models::Settings::Currencies::ExchangeRateUpdateVisibilityParams for more details.

Change the visibility setting for a currency pair. This will hide or display a currency pair for users in the HubSpot app.

Parameters:

Returns:

  • (nil)

See Also:



168
169
170
171
172
173
174
175
176
177
178
# File 'lib/hubspot_sdk/resources/settings/currencies/exchange_rates.rb', line 168

def update_visibility(params)
  parsed, options =
    HubSpotSDK::Settings::Currencies::ExchangeRateUpdateVisibilityParams.dump_request(params)
  @client.request(
    method: :post,
    path: "settings/currencies/2026-03/exchange-rates/update-visibility",
    body: parsed,
    model: NilClass,
    options: options
  )
end