code: function(query, params, namespace, callback) {
              if (!callback && utils.isFunction(namespace)) {
                  callback = namespace;
                  namespace = null;
              }
              
              var jobs = new root.Jobs(this, namespace);
              return jobs.search(query, params, callback);
          }
docs: Creates a search job with a given search query and optional parameters, including `exec_mode` to specify the type of search:
  
  - Use `exec_mode=normal` to return a search job ID immediately (default).
  Poll for completion to find out when you can retrieve search results.
  
  - Use `exec_mode=blocking` to return the search job ID when the search has finished.
  
  To run a oneshot search, which does not create a job but rather returns the search results, use `Service.oneshotSearch`.
  
  @example
  
  service.search("search ERROR", {id: "myjob_123"}, function(err, newJob) {
  console.log("CREATED": newJob.sid);
  });
  
  @param {String} query The search query.
  @param {Object} params A dictionary of properties for the job. For a list of available parameters, see <a href=" http://dev.splunk.com/view/SP-CAAAEFA#searchjobparams" target="_blank">Search job parameters</a> on Splunk Developer Portal.
  @param {Object} namespace Namespace information:
  - `owner` (_string_): The Splunk username, such as "admin". A value of "nobody" means no specific user. The "-" wildcard means all users.
  - `app` (_string_): The app context for this resource (such as "search"). The "-" wildcard means all apps.
  - `sharing` (_string_): A mode that indicates how the resource is shared. The sharing mode can be "user", "app", "global", or "system".
  @param {Function} callback A function to call with the created job: `(err, createdJob)`.
  
  @endpoint search/jobs
  @method splunkjs.Service