As I am quite new to the world of Adobe Assets I apologize if this question has already been raised and solved.
What I am interested in is what are the options, and best practices, for searching for a desired asset via the AEM Assets API? The user of my app is allowed to enter the search keywords which correspond to the asset metadata attributes. Based on the user input my application should return the desired asset which is stored in the DAM.
However I am not sure what is the best way to achieve this in Adobe AEM Assets? v.6.5
Generally you can use the querybuilder API and pass it all the predicates to do search. You can use the free text search to allow searching all the metadata fields or you can restrict the search to relevant metadata using property searches. All this is derived from the kind of query that you use.
Also do not forget about creating indexes as indexes help to run the query faster. It is all Lucene under the hood.