=begin #MailSlurp API #MailSlurp is an API for sending and receiving emails from dynamically allocated email addresses. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository The version of the OpenAPI document: 6.5.2 Contact: contact@mailslurp.dev Generated by: https://openapi-generator.tech OpenAPI Generator version: 4.3.1 =end require 'cgi' module MailSlurpClient class SentEmailsControllerApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Delete all sent email receipts # @param [Hash] opts the optional parameters # @return [nil] def delete_all_sent_emails(opts = {}) delete_all_sent_emails_with_http_info(opts) nil end # Delete all sent email receipts # @param [Hash] opts the optional parameters # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers def delete_all_sent_emails_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.delete_all_sent_emails ...' end # resource path local_var_path = '/sent' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: SentEmailsControllerApi#delete_all_sent_emails\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Delete sent email receipt # @param id [String] # @param [Hash] opts the optional parameters # @return [nil] def delete_sent_email(id, opts = {}) delete_sent_email_with_http_info(id, opts) nil end # Delete sent email receipt # @param id [String] # @param [Hash] opts the optional parameters # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers def delete_sent_email_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.delete_sent_email ...' 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 SentEmailsControllerApi.delete_sent_email" end # resource path local_var_path = '/sent/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s)) # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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(:DELETE, local_var_path, new_options) if @api_client.config.debugging @api_client.config.logger.debug "API called: SentEmailsControllerApi#delete_sent_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all sent email tracking pixels in paginated form # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in sent email tracking pixel list pagination (default to 0) # @option opts [Integer] :size Optional page size in sent email tracking pixel list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageTrackingPixelProjection] def get_all_sent_tracking_pixels(opts = {}) data, _status_code, _headers = get_all_sent_tracking_pixels_with_http_info(opts) data end # Get all sent email tracking pixels in paginated form # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in sent email tracking pixel list pagination # @option opts [Integer] :size Optional page size in sent email tracking pixel list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageTrackingPixelProjection, Integer, Hash)>] PageTrackingPixelProjection data, response status code and response headers def get_all_sent_tracking_pixels_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_all_sent_tracking_pixels ...' end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/tracking-pixels' # query parameters query_params = opts[:query_params] || {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'searchFilter'] = opts[:'search_filter'] if !opts[:'search_filter'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageTrackingPixelProjection' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_all_sent_tracking_pixels\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get raw sent email string. Returns unparsed raw SMTP message with headers and body. # Returns a raw, unparsed, and unprocessed sent email. If your client has issues processing the response it is likely due to the response content-type which is text/plain. If you need a JSON response content-type use the getRawSentEmailJson endpoint # @param email_id [String] ID of email # @param [Hash] opts the optional parameters # @return [String] def get_raw_sent_email_contents(email_id, opts = {}) data, _status_code, _headers = get_raw_sent_email_contents_with_http_info(email_id, opts) data end # Get raw sent email string. Returns unparsed raw SMTP message with headers and body. # Returns a raw, unparsed, and unprocessed sent email. If your client has issues processing the response it is likely due to the response content-type which is text/plain. If you need a JSON response content-type use the getRawSentEmailJson endpoint # @param email_id [String] ID of email # @param [Hash] opts the optional parameters # @return [Array<(String, Integer, Hash)>] String data, response status code and response headers def get_raw_sent_email_contents_with_http_info(email_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_raw_sent_email_contents ...' end # verify the required parameter 'email_id' is set if @api_client.config.client_side_validation && email_id.nil? fail ArgumentError, "Missing the required parameter 'email_id' when calling SentEmailsControllerApi.get_raw_sent_email_contents" end # resource path local_var_path = '/sent/{emailId}/raw'.sub('{' + 'emailId' + '}', CGI.escape(email_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(['text/plain']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'String' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_raw_sent_email_contents\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get raw sent email in JSON. Unparsed SMTP message in JSON wrapper format. # Returns a raw, unparsed, and unprocessed sent email wrapped in a JSON response object for easier handling when compared with the getRawSentEmail text/plain response # @param email_id [String] ID of email # @param [Hash] opts the optional parameters # @return [RawEmailJson] def get_raw_sent_email_json(email_id, opts = {}) data, _status_code, _headers = get_raw_sent_email_json_with_http_info(email_id, opts) data end # Get raw sent email in JSON. Unparsed SMTP message in JSON wrapper format. # Returns a raw, unparsed, and unprocessed sent email wrapped in a JSON response object for easier handling when compared with the getRawSentEmail text/plain response # @param email_id [String] ID of email # @param [Hash] opts the optional parameters # @return [Array<(RawEmailJson, Integer, Hash)>] RawEmailJson data, response status code and response headers def get_raw_sent_email_json_with_http_info(email_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_raw_sent_email_json ...' end # verify the required parameter 'email_id' is set if @api_client.config.client_side_validation && email_id.nil? fail ArgumentError, "Missing the required parameter 'email_id' when calling SentEmailsControllerApi.get_raw_sent_email_json" end # resource path local_var_path = '/sent/{emailId}/raw/json'.sub('{' + 'emailId' + '}', CGI.escape(email_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(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'RawEmailJson' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_raw_sent_email_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a sent email delivery status # @param delivery_id [String] # @param [Hash] opts the optional parameters # @return [DeliveryStatusDto] def get_sent_delivery_status(delivery_id, opts = {}) data, _status_code, _headers = get_sent_delivery_status_with_http_info(delivery_id, opts) data end # Get a sent email delivery status # @param delivery_id [String] # @param [Hash] opts the optional parameters # @return [Array<(DeliveryStatusDto, Integer, Hash)>] DeliveryStatusDto data, response status code and response headers def get_sent_delivery_status_with_http_info(delivery_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_delivery_status ...' end # verify the required parameter 'delivery_id' is set if @api_client.config.client_side_validation && delivery_id.nil? fail ArgumentError, "Missing the required parameter 'delivery_id' when calling SentEmailsControllerApi.get_sent_delivery_status" end # resource path local_var_path = '/sent/delivery-status/{deliveryId}'.sub('{' + 'deliveryId' + '}', CGI.escape(delivery_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(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'DeliveryStatusDto' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_delivery_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all sent email delivery statuses # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in delivery status list pagination (default to 0) # @option opts [Integer] :size Optional page size in delivery status list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageDeliveryStatus] def get_sent_delivery_statuses(opts = {}) data, _status_code, _headers = get_sent_delivery_statuses_with_http_info(opts) data end # Get all sent email delivery statuses # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in delivery status list pagination # @option opts [Integer] :size Optional page size in delivery status list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageDeliveryStatus, Integer, Hash)>] PageDeliveryStatus data, response status code and response headers def get_sent_delivery_statuses_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_delivery_statuses ...' end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/delivery-status' # query parameters query_params = opts[:query_params] || {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageDeliveryStatus' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_delivery_statuses\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all sent email delivery statuses # @param sent_id [String] # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in delivery status list pagination (default to 0) # @option opts [Integer] :size Optional page size in delivery status list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageDeliveryStatus] def get_sent_delivery_statuses_by_sent_id(sent_id, opts = {}) data, _status_code, _headers = get_sent_delivery_statuses_by_sent_id_with_http_info(sent_id, opts) data end # Get all sent email delivery statuses # @param sent_id [String] # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in delivery status list pagination # @option opts [Integer] :size Optional page size in delivery status list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageDeliveryStatus, Integer, Hash)>] PageDeliveryStatus data, response status code and response headers def get_sent_delivery_statuses_by_sent_id_with_http_info(sent_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_delivery_statuses_by_sent_id ...' end # verify the required parameter 'sent_id' is set if @api_client.config.client_side_validation && sent_id.nil? fail ArgumentError, "Missing the required parameter 'sent_id' when calling SentEmailsControllerApi.get_sent_delivery_statuses_by_sent_id" end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/{sentId}/delivery-status'.sub('{' + 'sentId' + '}', CGI.escape(sent_id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageDeliveryStatus' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_delivery_statuses_by_sent_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get sent email receipt # @param id [String] # @param [Hash] opts the optional parameters # @return [SentEmailDto] def get_sent_email(id, opts = {}) data, _status_code, _headers = get_sent_email_with_http_info(id, opts) data end # Get sent email receipt # @param id [String] # @param [Hash] opts the optional parameters # @return [Array<(SentEmailDto, Integer, Hash)>] SentEmailDto data, response status code and response headers def get_sent_email_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_email ...' 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 SentEmailsControllerApi.get_sent_email" end # resource path local_var_path = '/sent/{id}'.sub('{' + 'id' + '}', CGI.escape(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(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'SentEmailDto' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get sent email HTML content # @param id [String] # @param [Hash] opts the optional parameters # @return [String] def get_sent_email_html_content(id, opts = {}) data, _status_code, _headers = get_sent_email_html_content_with_http_info(id, opts) data end # Get sent email HTML content # @param id [String] # @param [Hash] opts the optional parameters # @return [Array<(String, Integer, Hash)>] String data, response status code and response headers def get_sent_email_html_content_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_email_html_content ...' 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 SentEmailsControllerApi.get_sent_email_html_content" end # resource path local_var_path = '/sent/{id}/html'.sub('{' + 'id' + '}', CGI.escape(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(['text/html']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'String' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_email_html_content\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get sent email URL for viewing in browser or downloading # Get a list of URLs for sent email content as text/html or raw SMTP message for viewing the message in a browser. # @param id [String] # @param [Hash] opts the optional parameters # @return [EmailPreviewUrls] def get_sent_email_preview_ur_ls(id, opts = {}) data, _status_code, _headers = get_sent_email_preview_ur_ls_with_http_info(id, opts) data end # Get sent email URL for viewing in browser or downloading # Get a list of URLs for sent email content as text/html or raw SMTP message for viewing the message in a browser. # @param id [String] # @param [Hash] opts the optional parameters # @return [Array<(EmailPreviewUrls, Integer, Hash)>] EmailPreviewUrls data, response status code and response headers def get_sent_email_preview_ur_ls_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_email_preview_ur_ls ...' 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 SentEmailsControllerApi.get_sent_email_preview_ur_ls" end # resource path local_var_path = '/sent/{id}/urls'.sub('{' + 'id' + '}', CGI.escape(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(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'EmailPreviewUrls' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_email_preview_ur_ls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all tracking pixels for a sent email in paginated form # @param id [String] # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in sent email tracking pixel list pagination (default to 0) # @option opts [Integer] :size Optional page size in sent email tracking pixel list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageTrackingPixelProjection] def get_sent_email_tracking_pixels(id, opts = {}) data, _status_code, _headers = get_sent_email_tracking_pixels_with_http_info(id, opts) data end # Get all tracking pixels for a sent email in paginated form # @param id [String] # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in sent email tracking pixel list pagination # @option opts [Integer] :size Optional page size in sent email tracking pixel list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageTrackingPixelProjection, Integer, Hash)>] PageTrackingPixelProjection data, response status code and response headers def get_sent_email_tracking_pixels_with_http_info(id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_email_tracking_pixels ...' 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 SentEmailsControllerApi.get_sent_email_tracking_pixels" end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/{id}/tracking-pixels'.sub('{' + 'id' + '}', CGI.escape(id.to_s)) # query parameters query_params = opts[:query_params] || {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'searchFilter'] = opts[:'search_filter'] if !opts[:'search_filter'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageTrackingPixelProjection' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_email_tracking_pixels\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all sent emails in paginated form # @param [Hash] opts the optional parameters # @option opts [String] :inbox_id Optional inboxId to filter sender of sent emails by # @option opts [Integer] :page Optional page index in inbox sent email list pagination (default to 0) # @option opts [Integer] :size Optional page size in inbox sent email list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageSentEmailProjection] def get_sent_emails(opts = {}) data, _status_code, _headers = get_sent_emails_with_http_info(opts) data end # Get all sent emails in paginated form # @param [Hash] opts the optional parameters # @option opts [String] :inbox_id Optional inboxId to filter sender of sent emails by # @option opts [Integer] :page Optional page index in inbox sent email list pagination # @option opts [Integer] :size Optional page size in inbox sent email list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageSentEmailProjection, Integer, Hash)>] PageSentEmailProjection data, response status code and response headers def get_sent_emails_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_emails ...' end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent' # query parameters query_params = opts[:query_params] || {} query_params[:'inboxId'] = opts[:'inbox_id'] if !opts[:'inbox_id'].nil? query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'searchFilter'] = opts[:'search_filter'] if !opts[:'search_filter'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageSentEmailProjection' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_emails\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get results of email sent with queues in paginated form # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in inbox sent email list pagination (default to 0) # @option opts [Integer] :size Optional page size in inbox sent email list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageSentEmailWithQueueProjection] def get_sent_emails_with_queue_results(opts = {}) data, _status_code, _headers = get_sent_emails_with_queue_results_with_http_info(opts) data end # Get results of email sent with queues in paginated form # @param [Hash] opts the optional parameters # @option opts [Integer] :page Optional page index in inbox sent email list pagination # @option opts [Integer] :size Optional page size in inbox sent email list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageSentEmailWithQueueProjection, Integer, Hash)>] PageSentEmailWithQueueProjection data, response status code and response headers def get_sent_emails_with_queue_results_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_emails_with_queue_results ...' end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/queue-results' # query parameters query_params = opts[:query_params] || {} query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageSentEmailWithQueueProjection' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_emails_with_queue_results\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all sent organization emails in paginated form # @param [Hash] opts the optional parameters # @option opts [String] :inbox_id Optional inboxId to filter sender of sent emails by # @option opts [Integer] :page Optional page index in sent email list pagination (default to 0) # @option opts [Integer] :size Optional page size in sent email list pagination (default to 20) # @option opts [String] :sort Optional createdAt sort direction ASC or DESC (default to 'ASC') # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [PageSentEmailProjection] def get_sent_organization_emails(opts = {}) data, _status_code, _headers = get_sent_organization_emails_with_http_info(opts) data end # Get all sent organization emails in paginated form # @param [Hash] opts the optional parameters # @option opts [String] :inbox_id Optional inboxId to filter sender of sent emails by # @option opts [Integer] :page Optional page index in sent email list pagination # @option opts [Integer] :size Optional page size in sent email list pagination # @option opts [String] :sort Optional createdAt sort direction ASC or DESC # @option opts [String] :search_filter Optional search filter # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(PageSentEmailProjection, Integer, Hash)>] PageSentEmailProjection data, response status code and response headers def get_sent_organization_emails_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.get_sent_organization_emails ...' end allowable_values = ["ASC", "DESC"] if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort']) fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}" end # resource path local_var_path = '/sent/organization' # query parameters query_params = opts[:query_params] || {} query_params[:'inboxId'] = opts[:'inbox_id'] if !opts[:'inbox_id'].nil? query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil? query_params[:'size'] = opts[:'size'] if !opts[:'size'].nil? query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil? query_params[:'searchFilter'] = opts[:'search_filter'] if !opts[:'search_filter'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'PageSentEmailProjection' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#get_sent_organization_emails\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Wait for delivery statuses # @param [Hash] opts the optional parameters # @option opts [String] :sent_id Optional sent email ID filter # @option opts [String] :inbox_id Optional inbox ID filter # @option opts [Integer] :timeout Optional timeout milliseconds # @option opts [Integer] :index Zero based index of the delivery status to wait for. If 1 delivery status already and you want to wait for the 2nd pass index=1 # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [DeliveryStatusDto] def wait_for_delivery_statuses(opts = {}) data, _status_code, _headers = wait_for_delivery_statuses_with_http_info(opts) data end # Wait for delivery statuses # @param [Hash] opts the optional parameters # @option opts [String] :sent_id Optional sent email ID filter # @option opts [String] :inbox_id Optional inbox ID filter # @option opts [Integer] :timeout Optional timeout milliseconds # @option opts [Integer] :index Zero based index of the delivery status to wait for. If 1 delivery status already and you want to wait for the 2nd pass index=1 # @option opts [DateTime] :since Filter by created at after the given timestamp # @option opts [DateTime] :before Filter by created at before the given timestamp # @return [Array<(DeliveryStatusDto, Integer, Hash)>] DeliveryStatusDto data, response status code and response headers def wait_for_delivery_statuses_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: SentEmailsControllerApi.wait_for_delivery_statuses ...' end if @api_client.config.client_side_validation && !opts[:'index'].nil? && opts[:'index'] > 2147483647 fail ArgumentError, 'invalid value for "opts[:"index"]" when calling SentEmailsControllerApi.wait_for_delivery_statuses, must be smaller than or equal to 2147483647.' end if @api_client.config.client_side_validation && !opts[:'index'].nil? && opts[:'index'] < 0 fail ArgumentError, 'invalid value for "opts[:"index"]" when calling SentEmailsControllerApi.wait_for_delivery_statuses, must be greater than or equal to 0.' end # resource path local_var_path = '/sent/delivery-status/wait-for' # query parameters query_params = opts[:query_params] || {} query_params[:'sentId'] = opts[:'sent_id'] if !opts[:'sent_id'].nil? query_params[:'inboxId'] = opts[:'inbox_id'] if !opts[:'inbox_id'].nil? query_params[:'timeout'] = opts[:'timeout'] if !opts[:'timeout'].nil? query_params[:'index'] = opts[:'index'] if !opts[:'index'].nil? query_params[:'since'] = opts[:'since'] if !opts[:'since'].nil? query_params[:'before'] = opts[:'before'] if !opts[:'before'].nil? # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['*/*']) # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:body] # return_type return_type = opts[:return_type] || 'DeliveryStatusDto' # auth_names auth_names = opts[:auth_names] || ['API_KEY'] new_options = opts.merge( :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: SentEmailsControllerApi#wait_for_delivery_statuses\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end