'optional list', 'revisionIDs' => 'optional list', ); } public function defineErrorTypes() { return array(); } public function defineReturnType() { return 'list'; } protected function execute(ConduitAPIRequest $request) { $ids = $request->getValue('ids', array()); $revision_ids = $request->getValue('revisionIDs', array()); $diffs = array(); if ($ids || $revision_ids) { $diffs = id(new DifferentialDiffQuery()) ->setViewer($request->getUser()) ->withIDs($ids) ->withRevisionIDs($revision_ids) ->needChangesets(true) ->needArcanistProjects(true) ->execute(); } return mpull($diffs, 'getDiffDict', 'getID'); } }