To capture analytics around Search Terms and Downloaded media items you will need to work with Sitecores Page Events. In the Experience Analytics Dashboard these are found under the Behaviour section.
Here is a helper class for working with Page Events:
within your Search Controller add the following lines to add the Search Term:
var pageEvent = new PageEvents(); pageEvent.RegisterSearchTerm(searchTerm, new Sitecore.Data.ID(request.PageId));
Note that if you are doing this through Web API it will need to be session aware route.
For Downloads you need to navigate to the file templates under: /sitecore/templates/System/Media/Unversioned
for the document type you want to track, open the standard values and then select the ANALYZE -> Attributes menu.
In the modal dialog select the EVENTS tab and tick Download.