11# frozen_string_literal: true
22
33require_relative "../../requests"
4- require_relative "../types/analytics_query"
5- require_relative "../types/analytics_query_result"
6- require "json"
74require "async"
85
96module Vapi
@@ -17,27 +14,17 @@ def initialize(request_client:)
1714 @request_client = request_client
1815 end
1916
20- # @param queries [Array<Hash>] This is the list of metric queries you want to perform.Request of type Array<Vapi::AnalyticsQuery>, as a Hash
21- # * :table (String)
22- # * :group_by (Array<Vapi::AnalyticsQueryGroupByItem>)
23- # * :name (String)
24- # * :time_range (Hash)
25- # * :step (Vapi::TimeRangeStep)
26- # * :start (DateTime)
27- # * :end_ (DateTime)
28- # * :timezone (String)
29- # * :operations (Array<Vapi::AnalyticsOperation>)
3017 # @param request_options [Vapi::RequestOptions]
31- # @return [Array<Vapi::AnalyticsQueryResult> ]
18+ # @return [Void ]
3219 # @example
3320 # api = Vapi::Client.new(
3421 # base_url: "https://api.example.com",
3522 # environment: Vapi::Environment::DEFAULT,
3623 # token: "YOUR_AUTH_TOKEN"
3724 # )
38- # api.analytics.get(queries: [{ table: "call", name: "name", operations: [{ operation: SUM, column: ID }] }])
39- def get ( queries : , request_options : nil )
40- response = @request_client . conn . post do |req |
25+ # api.analytics.get
26+ def get ( request_options : nil )
27+ @request_client . conn . post do |req |
4128 req . options . timeout = request_options . timeout_in_seconds unless request_options &.timeout_in_seconds . nil?
4229 req . headers [ "Authorization" ] = request_options . token unless request_options &.token . nil?
4330 req . headers = {
@@ -48,14 +35,11 @@ def get(queries:, request_options: nil)
4835 unless request_options . nil? || request_options &.additional_query_parameters . nil?
4936 req . params = { **( request_options &.additional_query_parameters || { } ) } . compact
5037 end
51- req . body = { **( request_options &.additional_body_parameters || { } ) , queries : queries } . compact
38+ unless request_options . nil? || request_options &.additional_body_parameters . nil?
39+ req . body = { **( request_options &.additional_body_parameters || { } ) } . compact
40+ end
5241 req . url "#{ @request_client . get_url ( request_options : request_options ) } /analytics"
5342 end
54- parsed_json = JSON . parse ( response . body )
55- parsed_json &.map do |item |
56- item = item . to_json
57- Vapi ::AnalyticsQueryResult . from_json ( json_object : item )
58- end
5943 end
6044 end
6145
@@ -69,28 +53,18 @@ def initialize(request_client:)
6953 @request_client = request_client
7054 end
7155
72- # @param queries [Array<Hash>] This is the list of metric queries you want to perform.Request of type Array<Vapi::AnalyticsQuery>, as a Hash
73- # * :table (String)
74- # * :group_by (Array<Vapi::AnalyticsQueryGroupByItem>)
75- # * :name (String)
76- # * :time_range (Hash)
77- # * :step (Vapi::TimeRangeStep)
78- # * :start (DateTime)
79- # * :end_ (DateTime)
80- # * :timezone (String)
81- # * :operations (Array<Vapi::AnalyticsOperation>)
8256 # @param request_options [Vapi::RequestOptions]
83- # @return [Array<Vapi::AnalyticsQueryResult> ]
57+ # @return [Void ]
8458 # @example
8559 # api = Vapi::Client.new(
8660 # base_url: "https://api.example.com",
8761 # environment: Vapi::Environment::DEFAULT,
8862 # token: "YOUR_AUTH_TOKEN"
8963 # )
90- # api.analytics.get(queries: [{ table: "call", name: "name", operations: [{ operation: SUM, column: ID }] }])
91- def get ( queries : , request_options : nil )
64+ # api.analytics.get
65+ def get ( request_options : nil )
9266 Async do
93- response = @request_client . conn . post do |req |
67+ @request_client . conn . post do |req |
9468 req . options . timeout = request_options . timeout_in_seconds unless request_options &.timeout_in_seconds . nil?
9569 req . headers [ "Authorization" ] = request_options . token unless request_options &.token . nil?
9670 req . headers = {
@@ -101,14 +75,11 @@ def get(queries:, request_options: nil)
10175 unless request_options . nil? || request_options &.additional_query_parameters . nil?
10276 req . params = { **( request_options &.additional_query_parameters || { } ) } . compact
10377 end
104- req . body = { **( request_options &.additional_body_parameters || { } ) , queries : queries } . compact
78+ unless request_options . nil? || request_options &.additional_body_parameters . nil?
79+ req . body = { **( request_options &.additional_body_parameters || { } ) } . compact
80+ end
10581 req . url "#{ @request_client . get_url ( request_options : request_options ) } /analytics"
10682 end
107- parsed_json = JSON . parse ( response . body )
108- parsed_json &.map do |item |
109- item = item . to_json
110- Vapi ::AnalyticsQueryResult . from_json ( json_object : item )
111- end
11283 end
11384 end
11485 end
0 commit comments