diff --git a/reviewboard/webapi/json.py b/reviewboard/webapi/json.py
--- a/reviewboard/webapi/json.py
+++ b/reviewboard/webapi/json.py
@@ -29,6 +29,7 @@ from djblets.webapi.errors import WebAPIError, \
 
 from reviewboard import get_version_string, get_package_version, is_release
 from reviewboard.accounts.models import Profile
+from reviewboard.diffviewer.diffutils import get_diff_files
 from reviewboard.diffviewer.forms import UploadDiffForm, EmptyDiffError
 from reviewboard.diffviewer.models import FileDiff, DiffSet
 from reviewboard.reviews.forms import UploadScreenshotForm
@@ -711,6 +712,24 @@ def review_request_diffsets(request, review_request_id):
     })
 
 
+@webapi_check_login_required
+def diff_filenames(request, diffset_id):
+    """
+    Returns a list of a diffet's depot filenames.
+    """
+    diffset = get_object_or_404(DiffSet, pk=diffset_id)
+    # TODO:(pv) Are there any permissions issues?
+    filediffs = get_diff_files(diffset, enable_syntax_highlighting=False, load_chunks=False)
+    files = []
+    for filediff in filediffs:
+        dest_file = filediff['depot_filename']
+        if dest_file:
+            files.append(dest_file)
+    return WebAPIResponse(request, {
+        'files': files,
+    })    
+
+
 def _get_and_validate_review(request, review_request_id, review_id):
     review_request = get_object_or_404(ReviewRequest, pk=review_request_id)
     review = get_object_or_404(Review, pk=review_id)
diff --git a/reviewboard/webapi/urls.py b/reviewboard/webapi/urls.py
--- a/reviewboard/webapi/urls.py
+++ b/reviewboard/webapi/urls.py
@@ -164,6 +164,10 @@ urlpatterns += never_cache_patterns('reviewboard.webapi.json',
     (r'^reviewrequests/(?P<review_request_id>[0-9]+)/screenshot/new/$',
      'new_screenshot'),
 
+    # Diff filesets
+    (r'^diff/(?P<diffset_id>[0-9]+)/filenames/$',
+     'diff_filenames'),
+
     # Diff comments
     (r'^reviewrequests/(?P<review_request_id>[0-9]+)/diff/(?P<diff_revision>[0-9]+)/file/(?P<filediff_id>[0-9]+)/line/(?P<line>[0-9]+)/comments/$',
      'diff_line_comments'),
