49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/trophy_api_client/metrics/client.rb', line 49
def event(key:, user:, value:, idempotency_key: nil, attributes: nil, request_options: nil)
response = @request_client.conn.post do |req|
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
req.["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
req.["Tenant-ID"] = request_options.tenant_id unless request_options&.tenant_id.nil?
req. = {
**(req. || {}),
**@request_client.,
**(request_options&. || {}),
"Idempotency-Key": idempotency_key
}.compact
unless request_options.nil? || request_options&.additional_query_parameters.nil?
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
end
req.body = {
**(request_options&.additional_body_parameters || {}),
user: user,
value: value,
attributes: attributes
}.compact
req.url "#{@request_client.get_url(environment: api, request_options: request_options)}/metrics/#{key}/event"
end
TrophyApiClient::EventResponse.from_json(json_object: response.body)
end
|