=begin #RadioManager #RadioManager OpenAPI spec version: 2.0 Contact: support@pluxbox.com Generated by: https://github.com/swagger-api/swagger-codegen.git Swagger Codegen version: 2.3.0 =end require "uri" module RadioManagerClient class CampaignApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Create campaign. # Create campaign. # @param data Data **(Required)** # @param [Hash] opts the optional parameters # @return [PostSuccess] def create_campaign(data, opts = {}) data, _status_code, _headers = create_campaign_with_http_info(data, opts) return data end # Create campaign. # Create campaign. # @param data Data **(Required)** # @param [Hash] opts the optional parameters # @return [Array<(PostSuccess, Fixnum, Hash)>] PostSuccess data, response status code and response headers def create_campaign_with_http_info(data, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CampaignApi.create_campaign ..." end # verify the required parameter 'data' is set if @api_client.config.client_side_validation && data.nil? fail ArgumentError, "Missing the required parameter 'data' when calling CampaignApi.create_campaign" end # resource path local_var_path = "/campaigns" # query parameters query_params = {} # header parameters 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 = {} # http body (model) post_body = @api_client.object_to_http_body(data) auth_names = ['API Key'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'PostSuccess') if @api_client.config.debugging @api_client.config.logger.debug "API called: CampaignApi#create_campaign\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete campaign by id # Delete campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @return [Success] def delete_campaign_by_id(id, opts = {}) data, _status_code, _headers = delete_campaign_by_id_with_http_info(id, opts) return data end # Delete campaign by id # Delete campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @return [Array<(Success, Fixnum, Hash)>] Success data, response status code and response headers def delete_campaign_by_id_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CampaignApi.delete_campaign_by_id ..." end # verify the required parameter 'id' is set if @api_client.config.client_side_validation && id.nil? fail ArgumentError, "Missing the required parameter 'id' when calling CampaignApi.delete_campaign_by_id" end if @api_client.config.client_side_validation && id < 0 fail ArgumentError, 'invalid value for "id" when calling CampaignApi.delete_campaign_by_id, must be greater than or equal to 0.' end # resource path local_var_path = "/campaigns/{id}".sub('{' + 'id' + '}', id.to_s) # query parameters query_params = {} # header parameters 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 = {} # http body (model) post_body = nil auth_names = ['API Key'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Success') if @api_client.config.debugging @api_client.config.logger.debug "API called: CampaignApi#delete_campaign_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get campaign by id # Get campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @option opts [Integer] :_external_station_id Query on a different (content providing) station *(Optional)* # @return [CampaignResult] def get_campaign_by_id(id, opts = {}) data, _status_code, _headers = get_campaign_by_id_with_http_info(id, opts) return data end # Get campaign by id # Get campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @option opts [Integer] :_external_station_id Query on a different (content providing) station *(Optional)* # @return [Array<(CampaignResult, Fixnum, Hash)>] CampaignResult data, response status code and response headers def get_campaign_by_id_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CampaignApi.get_campaign_by_id ..." end # verify the required parameter 'id' is set if @api_client.config.client_side_validation && id.nil? fail ArgumentError, "Missing the required parameter 'id' when calling CampaignApi.get_campaign_by_id" end if @api_client.config.client_side_validation && id < 0 fail ArgumentError, 'invalid value for "id" when calling CampaignApi.get_campaign_by_id, must be greater than or equal to 0.' end # resource path local_var_path = "/campaigns/{id}".sub('{' + 'id' + '}', id.to_s) # query parameters query_params = {} query_params[:'_external_station_id'] = opts[:'_external_station_id'] if !opts[:'_external_station_id'].nil? # header parameters 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 = {} # http body (model) post_body = nil auth_names = ['API Key'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'CampaignResult') if @api_client.config.debugging @api_client.config.logger.debug "API called: CampaignApi#get_campaign_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all campaigns. # List all campaigns. # @param [Hash] opts the optional parameters # @option opts [Integer] :page Current page *(Optional)* # @option opts [Integer] :item_id Search on Item ID *(Optional)* `(Relation)` # @option opts [Integer] :model_type_id Search on ModelType ID *(Optional)* `(Relation)` # @option opts [DateTime] :start_min Minimum start date *(Optional)* # @option opts [DateTime] :start_max Maximum start date *(Optional)* # @option opts [Integer] :limit Results per page *(Optional)* # @option opts [String] :order_by Field to order the results *(Optional)* # @option opts [String] :order_direction Direction of ordering *(Optional)* # @option opts [Integer] :_external_station_id Query on a different (content providing) station *(Optional)* # @return [CampaignResults] def list_campaigns(opts = {}) data, _status_code, _headers = list_campaigns_with_http_info(opts) return data end # Get all campaigns. # List all campaigns. # @param [Hash] opts the optional parameters # @option opts [Integer] :page Current page *(Optional)* # @option opts [Integer] :item_id Search on Item ID *(Optional)* `(Relation)` # @option opts [Integer] :model_type_id Search on ModelType ID *(Optional)* `(Relation)` # @option opts [DateTime] :start_min Minimum start date *(Optional)* # @option opts [DateTime] :start_max Maximum start date *(Optional)* # @option opts [Integer] :limit Results per page *(Optional)* # @option opts [String] :order_by Field to order the results *(Optional)* # @option opts [String] :order_direction Direction of ordering *(Optional)* # @option opts [Integer] :_external_station_id Query on a different (content providing) station *(Optional)* # @return [Array<(CampaignResults, Fixnum, Hash)>] CampaignResults data, response status code and response headers def list_campaigns_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CampaignApi.list_campaigns ..." end if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 0 fail ArgumentError, 'invalid value for "opts[:"page"]" when calling CampaignApi.list_campaigns, must be greater than or equal to 0.' end if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 50 fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling CampaignApi.list_campaigns, must be smaller than or equal to 50.' end if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1 fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling CampaignApi.list_campaigns, must be greater than or equal to 1.' end if @api_client.config.client_side_validation && opts[:'order_direction'] && !['asc', 'desc'].include?(opts[:'order_direction']) fail ArgumentError, 'invalid value for "order_direction", must be one of asc, desc' end # resource path local_var_path = "/campaigns" # query parameters query_params = {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'item_id'] = opts[:'item_id'] if !opts[:'item_id'].nil? query_params[:'model_type_id'] = opts[:'model_type_id'] if !opts[:'model_type_id'].nil? query_params[:'start-min'] = opts[:'start_min'] if !opts[:'start_min'].nil? query_params[:'start-max'] = opts[:'start_max'] if !opts[:'start_max'].nil? query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil? query_params[:'order-by'] = opts[:'order_by'] if !opts[:'order_by'].nil? query_params[:'order-direction'] = opts[:'order_direction'] if !opts[:'order_direction'].nil? query_params[:'_external_station_id'] = opts[:'_external_station_id'] if !opts[:'_external_station_id'].nil? # header parameters 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 = {} # http body (model) post_body = nil auth_names = ['API Key'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'CampaignResults') if @api_client.config.debugging @api_client.config.logger.debug "API called: CampaignApi#list_campaigns\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Update campaign by id # Update campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @option opts [CampaignDataInput] :data Data *(Optional)* # @return [Success] def update_campaign_by_id(id, opts = {}) data, _status_code, _headers = update_campaign_by_id_with_http_info(id, opts) return data end # Update campaign by id # Update campaign by id # @param id ID of Campaign **(Required)** # @param [Hash] opts the optional parameters # @option opts [CampaignDataInput] :data Data *(Optional)* # @return [Array<(Success, Fixnum, Hash)>] Success data, response status code and response headers def update_campaign_by_id_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CampaignApi.update_campaign_by_id ..." end # verify the required parameter 'id' is set if @api_client.config.client_side_validation && id.nil? fail ArgumentError, "Missing the required parameter 'id' when calling CampaignApi.update_campaign_by_id" end if @api_client.config.client_side_validation && id < 0 fail ArgumentError, 'invalid value for "id" when calling CampaignApi.update_campaign_by_id, must be greater than or equal to 0.' end # resource path local_var_path = "/campaigns/{id}".sub('{' + 'id' + '}', id.to_s) # query parameters query_params = {} # header parameters 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 = {} # http body (model) post_body = @api_client.object_to_http_body(opts[:'data']) auth_names = ['API Key'] data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Success') if @api_client.config.debugging @api_client.config.logger.debug "API called: CampaignApi#update_campaign_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end