code: function(callback) {
              var svc = this.dataModelObject.dataModel.service;
  
              var args = {
                  pivot_json: JSON.stringify(this.toJsonObject())
              };
  
              if (!utils.isUndefined(this.accelerationNamespace)) {
                  args.namespace = this.accelerationNamespace;
              }
              
              return svc.get(Paths.pivot + "/" + encodeURIComponent(this.dataModelObject.dataModel.name), args, function(err, response) {
                  if (err) {
                      callback(new Error(err.data.messages[0].text), response);
                      return;
                  }
  
                  if (response.data.entry && response.data.entry[0]) {
                      callback(null, new root.Pivot(svc, response.data.entry[0].content));
                  }
                  else {
                      callback(new Error("Didn't get a Pivot report back from Splunk"), response);
                  }
              });
          }
docs: Query Splunk for SPL queries corresponding to a pivot report
  for this data model, defined by this `PivotSpecification`.
  
  @example
  
  service.dataModels().fetch(function(err, dataModels) {
  var searches = dataModels.item("internal_audit_logs").objectByName("searches");
  var pivotSpec = searches.createPivotSpecification();
  // Use of the fluent API
  pivotSpec.addRowSplit("user", "Executing user")
  .addRangeColumnSplit("exec_time", {start: 0, end: 12, step: 5, limit: 4})
  .addCellValue("search", "Search Query", "values")
  .pivot(function(pivotErr, pivot) {
  console.log("Pivot search is:", pivot.search);
  });
  });
  
  @param {Function} callback A function to call when done getting the pivot: `(err, pivot)`.
  
  @method splunkjs.Service.PivotSpecification