Sha256: 8ffa7d0bda492e2652f967d312cddab00b0c94176136672a7fb9898af11741bb

Contents?: true

Size: 1.41 KB

Versions: 13

Compression:

Stored size: 1.41 KB

Contents

module Elastic
  module AppSearch
    class Client
      module Search
        # Search for documents
        #
        # @param [String] engine_name the unique Engine name
        # @param [String] query the search query
        # @option options see the {App Search API}[https://swiftype.com/documentation/app-search/] for supported search options.
        #
        # @return [Hash] search results
        def search(engine_name, query, options = {})
          params = Utils.symbolize_keys(options).merge(:query => query)
          request(:post, "engines/#{engine_name}/search", params)
        end

        # Run multiple searches for documents on a single request
        #
        # @param [String] engine_name the unique Engine name
        # @param [{query: String, options: Hash}] searches to execute
        # see the {App Search API}[https://swiftype.com/documentation/app-search/] for supported search options.
        #
        # @return [Array<Hash>] an Array of searh sesults
        def multi_search(engine_name, searches)
          params = searches.map do |search|
            search = Utils.symbolize_keys(search)
            query = search[:query]
            options = search[:options] || {}
            Utils.symbolize_keys(options).merge(:query => query)
          end
          request(:post, "engines/#{engine_name}/multi_search", {
            queries: params
          })
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
elastic-app-search-7.10.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.9.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.8.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.7.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.6.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.5.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.4.1 lib/elastic/app-search/client/search.rb
elastic-app-search-7.4.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.3.2 lib/elastic/app-search/client/search.rb
elastic-app-search-7.3.1 lib/elastic/app-search/client/search.rb
elastic-app-search-7.3.0 lib/elastic/app-search/client/search.rb
elastic-app-search-7.2.0 lib/elastic/app-search/client/search.rb
elastic-app-search-0.7.0 lib/elastic/app-search/client/search.rb