lib/VoucherifySdk/api/segments_api.rb in voucherify-5.0.0 vs lib/VoucherifySdk/api/segments_api.rb in voucherify-6.0.0
- old
+ new
@@ -17,10 +17,74 @@
attr_accessor :api_client
def initialize(api_client = ApiClient.default)
@api_client = api_client
end
+ # Create Segment
+ # Create a customer segment. 🚧 Limit on Static Segments There is a cap on the number of customers that you can assign to a static segment: **20,000**. If you would like to create a bigger segment, then you can use the unlimited auto-update segment instead and use some customer metadata to build this segment.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SegmentsCreateRequestBody] :segments_create_request_body Specify the boundary conditions for the customer segment.
+ # @return [SegmentsCreateResponseBody]
+ def create_segment(opts = {})
+ data, _status_code, _headers = create_segment_with_http_info(opts)
+ data
+ end
+
+ # Create Segment
+ # Create a customer segment. 🚧 Limit on Static Segments There is a cap on the number of customers that you can assign to a static segment: **20,000**. If you would like to create a bigger segment, then you can use the unlimited auto-update segment instead and use some customer metadata to build this segment.
+ # @param [Hash] opts the optional parameters
+ # @option opts [SegmentsCreateRequestBody] :segments_create_request_body Specify the boundary conditions for the customer segment.
+ # @return [Array<(SegmentsCreateResponseBody, Integer, Hash)>] SegmentsCreateResponseBody data, response status code and response headers
+ private def create_segment_with_http_info(opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug 'Calling API: SegmentsApi.create_segment ...'
+ end
+ # resource path
+ local_var_path = '/v1/segments'
+
+ # 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'
+ content_type = @api_client.select_header_content_type(['application/json'])
+ if !content_type.nil?
+ header_params['Content-Type'] = content_type
+ end
+
+ # form parameters
+ form_params = opts[:form_params] || {}
+
+ # http body (model)
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'segments_create_request_body'])
+
+ # return_type
+ return_type = opts[:debug_return_type] || 'SegmentsCreateResponseBody'
+
+ # auth_names
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
+
+ new_options = opts.merge(
+ :operation => :"SegmentsApi.create_segment",
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => return_type
+ )
+
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: SegmentsApi#create_segment\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
# Delete Segment
# This method deletes a customer segment.
# @param segment_id [String] A unique customer segment ID.
# @param [Hash] opts the optional parameters
# @return [nil]
@@ -36,14 +100,10 @@
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
private def delete_segment_with_http_info(segment_id, opts = {})
if @api_client.config.debugging
@api_client.config.logger.debug 'Calling API: SegmentsApi.delete_segment ...'
end
- # verify the required parameter 'segment_id' is set
- if @api_client.config.client_side_validation && segment_id.nil?
- fail ArgumentError, "Missing the required parameter 'segment_id' when calling SegmentsApi.delete_segment"
- end
# resource path
local_var_path = '/v1/segments/{segmentId}'.sub('{' + 'segmentId' + '}', CGI.escape(segment_id.to_s))
# query parameters
query_params = opts[:query_params] || {}
@@ -74,9 +134,68 @@
)
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
if @api_client.config.debugging
@api_client.config.logger.debug "API called: SegmentsApi#delete_segment\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
+ end
+ return data, status_code, headers
+ end
+
+ # Get Segment
+ # Retrieves the segment with given segment ID.
+ # @param segment_id [String] A unique customer segment ID.
+ # @param [Hash] opts the optional parameters
+ # @return [SegmentsGetResponseBody]
+ def get_segment(segment_id, opts = {})
+ data, _status_code, _headers = get_segment_with_http_info(segment_id, opts)
+ data
+ end
+
+ # Get Segment
+ # Retrieves the segment with given segment ID.
+ # @param segment_id [String] A unique customer segment ID.
+ # @param [Hash] opts the optional parameters
+ # @return [Array<(SegmentsGetResponseBody, Integer, Hash)>] SegmentsGetResponseBody data, response status code and response headers
+ private def get_segment_with_http_info(segment_id, opts = {})
+ if @api_client.config.debugging
+ @api_client.config.logger.debug 'Calling API: SegmentsApi.get_segment ...'
+ end
+ # resource path
+ local_var_path = '/v1/segments/{segmentId}'.sub('{' + 'segmentId' + '}', CGI.escape(segment_id.to_s))
+
+ # 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'])
+
+ # form parameters
+ form_params = opts[:form_params] || {}
+
+ # http body (model)
+ post_body = opts[:debug_body]
+
+ # return_type
+ return_type = opts[:debug_return_type] || 'SegmentsGetResponseBody'
+
+ # auth_names
+ auth_names = opts[:debug_auth_names] || ['X-App-Id', 'X-App-Token']
+
+ new_options = opts.merge(
+ :operation => :"SegmentsApi.get_segment",
+ :header_params => header_params,
+ :query_params => query_params,
+ :form_params => form_params,
+ :body => post_body,
+ :auth_names => auth_names,
+ :return_type => return_type
+ )
+
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
+ if @api_client.config.debugging
+ @api_client.config.logger.debug "API called: SegmentsApi#get_segment\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
end
return data, status_code, headers
end
end
end