=begin #Intrinio API #Welcome to the Intrinio API! Through our Financial Data Marketplace, we offer a wide selection of financial data feed APIs sourced by our own proprietary processes as well as from many data vendors. For a complete API request / response reference please view the [Intrinio API documentation](https://intrinio.com/documentation/api_v2). If you need additional help in using the API, please visit the [Intrinio website](https://intrinio.com) and click on the chat icon in the lower right corner. OpenAPI spec version: 2.8.1 Generated by: https://github.com/swagger-api/swagger-codegen.git Swagger Codegen version: 2.3.0-SNAPSHOT =end require "uri" module Intrinio class CompanyApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # All Companies # Returns all Companies. When parameters are specified, returns matching companies. # @param [Hash] opts the optional parameters # @option opts [Date] :latest_filing_date Last filing date # @option opts [String] :sic Return companies with the given Standard Industrial Classification code # @option opts [String] :template Return companies with the given financial statement template # @option opts [String] :sector Return companies in the given industry sector # @option opts [String] :industry_category Return companies in the given industry category # @option opts [String] :industry_group Return companies in the given industry group # @option opts [BOOLEAN] :has_fundamentals Return only companies that have fundamentals when true # @option opts [BOOLEAN] :has_stock_prices Return only companies that have stock prices when true # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanies] def get_all_companies(opts = {}) data, _status_code, _headers = get_all_companies_with_http_info(opts) return data end # All Companies # Returns all Companies. When parameters are specified, returns matching companies. # @param [Hash] opts the optional parameters # @option opts [Date] :latest_filing_date Last filing date # @option opts [String] :sic Return companies with the given Standard Industrial Classification code # @option opts [String] :template Return companies with the given financial statement template # @option opts [String] :sector Return companies in the given industry sector # @option opts [String] :industry_category Return companies in the given industry category # @option opts [String] :industry_group Return companies in the given industry group # @option opts [BOOLEAN] :has_fundamentals Return only companies that have fundamentals when true # @option opts [BOOLEAN] :has_stock_prices Return only companies that have stock prices when true # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanies, Fixnum, Hash)>] ApiResponseCompanies data, response status code and response headers def get_all_companies_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_all_companies ..." end if @api_client.config.client_side_validation && opts[:'template'] && !['industrial', 'financial'].include?(opts[:'template']) fail ArgumentError, 'invalid value for "template", must be one of industrial, financial' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_all_companies, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies" # query parameters query_params = {} query_params[:'latest_filing_date'] = opts[:'latest_filing_date'] if !opts[:'latest_filing_date'].nil? query_params[:'sic'] = opts[:'sic'] if !opts[:'sic'].nil? query_params[:'template'] = opts[:'template'] if !opts[:'template'].nil? query_params[:'sector'] = opts[:'sector'] if !opts[:'sector'].nil? query_params[:'industry_category'] = opts[:'industry_category'] if !opts[:'industry_category'].nil? query_params[:'industry_group'] = opts[:'industry_group'] if !opts[:'industry_group'].nil? query_params[:'has_fundamentals'] = opts[:'has_fundamentals'] if !opts[:'has_fundamentals'].nil? query_params[:'has_stock_prices'] = opts[:'has_stock_prices'] if !opts[:'has_stock_prices'].nil? query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanies') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_all_companies\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # All News # Returns all News for all Companies # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseNews] def get_all_company_news(opts = {}) data, _status_code, _headers = get_all_company_news_with_http_info(opts) return data end # All News # Returns all News for all Companies # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseNews, Fixnum, Hash)>] ApiResponseNews data, response status code and response headers def get_all_company_news_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_all_company_news ..." end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_all_company_news, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/news" # query parameters query_params = {} query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseNews') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_all_company_news\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Lookup Company # Returns the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @return [Company] def get_company(identifier, opts = {}) data, _status_code, _headers = get_company_with_http_info(identifier, opts) return data end # Lookup Company # Returns the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @return [Array<(Company, Fixnum, Hash)>] Company data, response status code and response headers def get_company_with_http_info(identifier, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company" end # resource path local_var_path = "/companies/{identifier}".sub('{' + 'identifier' + '}', identifier.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']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'Company') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Data Point (Number) for Company # Returns a numeric value for the given `tag` for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @return [Float] def get_company_data_point_number(identifier, tag, opts = {}) data, _status_code, _headers = get_company_data_point_number_with_http_info(identifier, tag, opts) return data end # Data Point (Number) for Company # Returns a numeric value for the given `tag` for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @return [Array<(Float, Fixnum, Hash)>] Float data, response status code and response headers def get_company_data_point_number_with_http_info(identifier, tag, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_data_point_number ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_data_point_number" end # verify the required parameter 'tag' is set if @api_client.config.client_side_validation && tag.nil? fail ArgumentError, "Missing the required parameter 'tag' when calling CompanyApi.get_company_data_point_number" end # resource path local_var_path = "/companies/{identifier}/data_point/{tag}/number".sub('{' + 'identifier' + '}', identifier.to_s).sub('{' + 'tag' + '}', tag.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['text/plain; charset=utf-8']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'Float') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_data_point_number\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Data Point (Text) for Company # Returns a text value for the given `tag` for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @return [String] def get_company_data_point_text(identifier, tag, opts = {}) data, _status_code, _headers = get_company_data_point_text_with_http_info(identifier, tag, opts) return data end # Data Point (Text) for Company # Returns a text value for the given `tag` for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @return [Array<(String, Fixnum, Hash)>] String data, response status code and response headers def get_company_data_point_text_with_http_info(identifier, tag, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_data_point_text ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_data_point_text" end # verify the required parameter 'tag' is set if @api_client.config.client_side_validation && tag.nil? fail ArgumentError, "Missing the required parameter 'tag' when calling CompanyApi.get_company_data_point_text" end # resource path local_var_path = "/companies/{identifier}/data_point/{tag}/text".sub('{' + 'identifier' + '}', identifier.to_s).sub('{' + 'tag' + '}', tag.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['text/plain; charset=utf-8']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'String') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_data_point_text\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # All Filings by Company # Returns a complete list of SEC filings for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [String] :report_type Filter by <a href=\"/documentation/sec_filing_report_types\" target=\"_blank\">report type</a>. Separate values with commas to return multiple report types. # @option opts [Date] :start_date Filed on or after the given date # @option opts [Date] :end_date Filed before or after the given date # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanyFilings] def get_company_filings(identifier, opts = {}) data, _status_code, _headers = get_company_filings_with_http_info(identifier, opts) return data end # All Filings by Company # Returns a complete list of SEC filings for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [String] :report_type Filter by <a href=\"/documentation/sec_filing_report_types\" target=\"_blank\">report type</a>. Separate values with commas to return multiple report types. # @option opts [Date] :start_date Filed on or after the given date # @option opts [Date] :end_date Filed before or after the given date # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanyFilings, Fixnum, Hash)>] ApiResponseCompanyFilings data, response status code and response headers def get_company_filings_with_http_info(identifier, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_filings ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_filings" end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_company_filings, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/{identifier}/filings".sub('{' + 'identifier' + '}', identifier.to_s) # query parameters query_params = {} query_params[:'report_type'] = opts[:'report_type'] if !opts[:'report_type'].nil? query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil? query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil? query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanyFilings') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_filings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # All Fundamentals by Company # Returns all Fundamentals for the Company with the given `identifier`. Returns Fundamentals matching parameters when supplied. # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [Date] :filed_after Filed on or after this date # @option opts [Date] :filed_before Filed on or before this date # @option opts [BOOLEAN] :reported_only Only as-reported fundamentals # @option opts [Integer] :fiscal_year Only for the given fiscal year # @option opts [String] :statement_code Only of the given statement code # @option opts [String] :type Only of the given type # @option opts [Date] :start_date Only on or after the given date # @option opts [Date] :end_date Only on or before the given date # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanyFundamentals] def get_company_fundamentals(identifier, opts = {}) data, _status_code, _headers = get_company_fundamentals_with_http_info(identifier, opts) return data end # All Fundamentals by Company # Returns all Fundamentals for the Company with the given `identifier`. Returns Fundamentals matching parameters when supplied. # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [Date] :filed_after Filed on or after this date # @option opts [Date] :filed_before Filed on or before this date # @option opts [BOOLEAN] :reported_only Only as-reported fundamentals # @option opts [Integer] :fiscal_year Only for the given fiscal year # @option opts [String] :statement_code Only of the given statement code # @option opts [String] :type Only of the given type # @option opts [Date] :start_date Only on or after the given date # @option opts [Date] :end_date Only on or before the given date # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanyFundamentals, Fixnum, Hash)>] ApiResponseCompanyFundamentals data, response status code and response headers def get_company_fundamentals_with_http_info(identifier, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_fundamentals ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_fundamentals" end if @api_client.config.client_side_validation && opts[:'statement_code'] && !['income_statement', 'balance_sheet_statement', 'cash_flow_statement', 'calculations'].include?(opts[:'statement_code']) fail ArgumentError, 'invalid value for "statement_code", must be one of income_statement, balance_sheet_statement, cash_flow_statement, calculations' end if @api_client.config.client_side_validation && opts[:'type'] && !['QTR', 'YTD', 'FY', 'TTM'].include?(opts[:'type']) fail ArgumentError, 'invalid value for "type", must be one of QTR, YTD, FY, TTM' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_company_fundamentals, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/{identifier}/fundamentals".sub('{' + 'identifier' + '}', identifier.to_s) # query parameters query_params = {} query_params[:'filed_after'] = opts[:'filed_after'] if !opts[:'filed_after'].nil? query_params[:'filed_before'] = opts[:'filed_before'] if !opts[:'filed_before'].nil? query_params[:'reported_only'] = opts[:'reported_only'] if !opts[:'reported_only'].nil? query_params[:'fiscal_year'] = opts[:'fiscal_year'] if !opts[:'fiscal_year'].nil? query_params[:'statement_code'] = opts[:'statement_code'] if !opts[:'statement_code'].nil? query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil? query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil? query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil? query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanyFundamentals') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_fundamentals\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Historical Data for Company # Returns historical values for the given `tag` and the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @option opts [String] :frequency Return historical data in the given frequency (default to daily) # @option opts [String] :type Return historical data for given fiscal period type # @option opts [Date] :start_date Return historical data on or after this date # @option opts [Date] :end_date Return historical data on or before this date # @option opts [String] :sort_order Sort by date `asc` or `desc` (default to desc) # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanyHistoricalData] def get_company_historical_data(identifier, tag, opts = {}) data, _status_code, _headers = get_company_historical_data_with_http_info(identifier, tag, opts) return data end # Historical Data for Company # Returns historical values for the given `tag` and the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param tag An Intrinio data tag ID or code (<a href='https://data.intrinio.com/data-tags'>reference</a>) # @param [Hash] opts the optional parameters # @option opts [String] :frequency Return historical data in the given frequency # @option opts [String] :type Return historical data for given fiscal period type # @option opts [Date] :start_date Return historical data on or after this date # @option opts [Date] :end_date Return historical data on or before this date # @option opts [String] :sort_order Sort by date `asc` or `desc` # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanyHistoricalData, Fixnum, Hash)>] ApiResponseCompanyHistoricalData data, response status code and response headers def get_company_historical_data_with_http_info(identifier, tag, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_historical_data ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_historical_data" end # verify the required parameter 'tag' is set if @api_client.config.client_side_validation && tag.nil? fail ArgumentError, "Missing the required parameter 'tag' when calling CompanyApi.get_company_historical_data" end if @api_client.config.client_side_validation && opts[:'frequency'] && !['daily', 'weekly', 'monthly', 'quarterly', 'yearly'].include?(opts[:'frequency']) fail ArgumentError, 'invalid value for "frequency", must be one of daily, weekly, monthly, quarterly, yearly' end if @api_client.config.client_side_validation && opts[:'type'] && !['FY', 'QTR', 'TTM'].include?(opts[:'type']) fail ArgumentError, 'invalid value for "type", must be one of FY, QTR, TTM' end if @api_client.config.client_side_validation && opts[:'sort_order'] && !['asc', 'desc'].include?(opts[:'sort_order']) fail ArgumentError, 'invalid value for "sort_order", must be one of asc, desc' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_company_historical_data, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/{identifier}/historical_data/{tag}".sub('{' + 'identifier' + '}', identifier.to_s).sub('{' + 'tag' + '}', tag.to_s) # query parameters query_params = {} query_params[:'frequency'] = opts[:'frequency'] if !opts[:'frequency'].nil? query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil? query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil? query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil? query_params[:'sort_order'] = opts[:'sort_order'] if !opts[:'sort_order'].nil? query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanyHistoricalData') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_historical_data\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # IPOs # Returns initial public offerings (IPOs). An IPO is a public offering of private company stock. The act of \"going public\" is initiated by an IPO, at which point the company's stock trades on a major stock exchange (such as NYSE or NASDAQ). Intrinio covers all upcoming and recent IPOs for US exchanges. # @param [Hash] opts the optional parameters # @option opts [String] :ticker Return IPOs with the given ticker (typically the IPO for the company) # @option opts [String] :status Return IPOs with the given status. Upcoming IPOs are scheduled to occur in the future. Priced IPOs have occured and the company should be trading publicly. Withdrawn IPOs were planned to occurr but were withdrawn beforehand # @option opts [Date] :start_date Return IPOs on or after the given date # @option opts [Date] :end_date Return IPOs on or before the given date # @option opts [Integer] :offer_amount_greater_than Return IPOs with an offer dollar amount greater than the given amount # @option opts [Integer] :offer_amount_less_than Return IPOs with an offer dollar amount less than the given amount # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseInitialPublicOfferings] def get_company_ipos(opts = {}) data, _status_code, _headers = get_company_ipos_with_http_info(opts) return data end # IPOs # Returns initial public offerings (IPOs). An IPO is a public offering of private company stock. The act of \"going public\" is initiated by an IPO, at which point the company's stock trades on a major stock exchange (such as NYSE or NASDAQ). Intrinio covers all upcoming and recent IPOs for US exchanges. # @param [Hash] opts the optional parameters # @option opts [String] :ticker Return IPOs with the given ticker (typically the IPO for the company) # @option opts [String] :status Return IPOs with the given status. Upcoming IPOs are scheduled to occur in the future. Priced IPOs have occured and the company should be trading publicly. Withdrawn IPOs were planned to occurr but were withdrawn beforehand # @option opts [Date] :start_date Return IPOs on or after the given date # @option opts [Date] :end_date Return IPOs on or before the given date # @option opts [Integer] :offer_amount_greater_than Return IPOs with an offer dollar amount greater than the given amount # @option opts [Integer] :offer_amount_less_than Return IPOs with an offer dollar amount less than the given amount # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseInitialPublicOfferings, Fixnum, Hash)>] ApiResponseInitialPublicOfferings data, response status code and response headers def get_company_ipos_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_ipos ..." end if @api_client.config.client_side_validation && opts[:'status'] && !['upcoming', 'priced', 'withdrawn'].include?(opts[:'status']) fail ArgumentError, 'invalid value for "status", must be one of upcoming, priced, withdrawn' end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_company_ipos, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/ipos" # query parameters query_params = {} query_params[:'ticker'] = opts[:'ticker'] if !opts[:'ticker'].nil? query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil? query_params[:'start_date'] = opts[:'start_date'] if !opts[:'start_date'].nil? query_params[:'end_date'] = opts[:'end_date'] if !opts[:'end_date'].nil? query_params[:'offer_amount_greater_than'] = opts[:'offer_amount_greater_than'] if !opts[:'offer_amount_greater_than'].nil? query_params[:'offer_amount_less_than'] = opts[:'offer_amount_less_than'] if !opts[:'offer_amount_less_than'].nil? query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseInitialPublicOfferings') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_ipos\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # All News by Company # Returns news for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return (default to 100) # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanyNews] def get_company_news(identifier, opts = {}) data, _status_code, _headers = get_company_news_with_http_info(identifier, opts) return data end # All News by Company # Returns news for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanyNews, Fixnum, Hash)>] ApiResponseCompanyNews data, response status code and response headers def get_company_news_with_http_info(identifier, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_news ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_news" end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.get_company_news, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/{identifier}/news".sub('{' + 'identifier' + '}', identifier.to_s) # query parameters query_params = {} query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanyNews') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_news\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # All Securities by Company # Returns Securities for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [ApiResponseCompanySecurities] def get_company_securities(identifier, opts = {}) data, _status_code, _headers = get_company_securities_with_http_info(identifier, opts) return data end # All Securities by Company # Returns Securities for the Company with the given `identifier` # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param [Hash] opts the optional parameters # @option opts [String] :next_page Gets the next page of data from a previous API call # @return [Array<(ApiResponseCompanySecurities, Fixnum, Hash)>] ApiResponseCompanySecurities data, response status code and response headers def get_company_securities_with_http_info(identifier, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.get_company_securities ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.get_company_securities" end # resource path local_var_path = "/companies/{identifier}/securities".sub('{' + 'identifier' + '}', identifier.to_s) # query parameters query_params = {} query_params[:'next_page'] = opts[:'next_page'] if !opts[:'next_page'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompanySecurities') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#get_company_securities\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Lookup Fundamental by Company # Returns the Fundamental for the Company with the given `identifier` and with the given parameters # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param statement_code The statement code # @param fiscal_period The fiscal period # @param fiscal_year The fiscal year # @param [Hash] opts the optional parameters # @return [Fundamental] def lookup_company_fundamental(identifier, statement_code, fiscal_period, fiscal_year, opts = {}) data, _status_code, _headers = lookup_company_fundamental_with_http_info(identifier, statement_code, fiscal_period, fiscal_year, opts) return data end # Lookup Fundamental by Company # Returns the Fundamental for the Company with the given `identifier` and with the given parameters # @param identifier A Company identifier (Ticker, CIK, LEI, Intrinio ID) # @param statement_code The statement code # @param fiscal_period The fiscal period # @param fiscal_year The fiscal year # @param [Hash] opts the optional parameters # @return [Array<(Fundamental, Fixnum, Hash)>] Fundamental data, response status code and response headers def lookup_company_fundamental_with_http_info(identifier, statement_code, fiscal_period, fiscal_year, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.lookup_company_fundamental ..." end # verify the required parameter 'identifier' is set if @api_client.config.client_side_validation && identifier.nil? fail ArgumentError, "Missing the required parameter 'identifier' when calling CompanyApi.lookup_company_fundamental" end # verify the required parameter 'statement_code' is set if @api_client.config.client_side_validation && statement_code.nil? fail ArgumentError, "Missing the required parameter 'statement_code' when calling CompanyApi.lookup_company_fundamental" end # verify enum value if @api_client.config.client_side_validation && !['income_statement', 'balance_sheet_statement', 'cash_flow_statement', 'calculations'].include?(statement_code) fail ArgumentError, "invalid value for 'statement_code', must be one of income_statement, balance_sheet_statement, cash_flow_statement, calculations" end # verify the required parameter 'fiscal_period' is set if @api_client.config.client_side_validation && fiscal_period.nil? fail ArgumentError, "Missing the required parameter 'fiscal_period' when calling CompanyApi.lookup_company_fundamental" end # verify enum value if @api_client.config.client_side_validation && !['Q1TTM', 'Q2TTM', 'Q3TTM', 'FY', 'Q1', 'Q2', 'Q3', 'Q4', 'Q2YTD', 'Q3YTD'].include?(fiscal_period) fail ArgumentError, "invalid value for 'fiscal_period', must be one of Q1TTM, Q2TTM, Q3TTM, FY, Q1, Q2, Q3, Q4, Q2YTD, Q3YTD" end # verify the required parameter 'fiscal_year' is set if @api_client.config.client_side_validation && fiscal_year.nil? fail ArgumentError, "Missing the required parameter 'fiscal_year' when calling CompanyApi.lookup_company_fundamental" end # resource path local_var_path = "/companies/{identifier}/fundamentals/lookup/{statement_code}/{fiscal_year}/{fiscal_period}".sub('{' + 'identifier' + '}', identifier.to_s).sub('{' + 'statement_code' + '}', statement_code.to_s).sub('{' + 'fiscal_period' + '}', fiscal_period.to_s).sub('{' + 'fiscal_year' + '}', fiscal_year.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']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'Fundamental') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#lookup_company_fundamental\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Search Companies # Searches for Companies matching the text `query` # @param query Search parameters # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return (default to 100) # @return [ApiResponseCompaniesSearch] def search_companies(query, opts = {}) data, _status_code, _headers = search_companies_with_http_info(query, opts) return data end # Search Companies # Searches for Companies matching the text `query` # @param query Search parameters # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size The number of results to return # @return [Array<(ApiResponseCompaniesSearch, Fixnum, Hash)>] ApiResponseCompaniesSearch data, response status code and response headers def search_companies_with_http_info(query, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: CompanyApi.search_companies ..." end # verify the required parameter 'query' is set if @api_client.config.client_side_validation && query.nil? fail ArgumentError, "Missing the required parameter 'query' when calling CompanyApi.search_companies" end if @api_client.config.client_side_validation && !opts[:'page_size'].nil? && opts[:'page_size'] > 10000 fail ArgumentError, 'invalid value for "opts[:"page_size"]" when calling CompanyApi.search_companies, must be smaller than or equal to 10000.' end # resource path local_var_path = "/companies/search" # query parameters query_params = {} query_params[:'query'] = query query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['ApiKeyAuth'] 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 => 'ApiResponseCompaniesSearch') if @api_client.config.debugging @api_client.config.logger.debug "API called: CompanyApi#search_companies\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end