public Request searchAsync(@NonNull PlacesQuery params, @NonNull CompletionHandler completionHandler) {
    """
	Search for places.
	
	@param params Search parameters.
	@param completionHandler The listener that will be notified of the request's outcome.
	@return A cancellable request.
    """
        final PlacesQuery paramsCopy = new PlacesQuery(params);
        return new AsyncTaskRequest(completionHandler) {
            @Override
            protected @NonNull JSONObject run() throws AlgoliaException {
                return search(paramsCopy);
            }
        }.start();
    }
public Request searchAsync(@NonNull PlacesQuery params, @NonNull CompletionHandler completionHandler) {
        final PlacesQuery paramsCopy = new PlacesQuery(params);
        return new AsyncTaskRequest(completionHandler) {
            @Override
            protected @NonNull JSONObject run() throws AlgoliaException {
                return search(paramsCopy);
            }
        }.start();
    }
public Request searchAsync ( @ NonNull PlacesQuery params , @ NonNull CompletionHandler completionHandler ) { final PlacesQuery paramsCopy = new PlacesQuery ( params ) ; return new AsyncTaskRequest ( completionHandler ) { @ Override protected @ NonNull JSONObject run ( ) throws AlgoliaException { return search ( paramsCopy ) ; } } . start ( ) ; }
Search for places.

@param params Search parameters.
@param completionHandler The listener that will be notified of the request's outcome.
@return A cancellable request.
Search for places .