diff --git a/roles/matrix/defaults/main.yml b/roles/matrix/defaults/main.yml
index 1f010cf2bdd16632135ab30798ebfd6c5e637dba..3db4414858a5ebbd217e2288ecb7072fe03684a9 100644
--- a/roles/matrix/defaults/main.yml
+++ b/roles/matrix/defaults/main.yml
@@ -2,6 +2,12 @@
 
 matrix_max_upload_size: 50M
 matrix_nginx_config:
+  - name: mjolnir
+    port: 8010
+    locations:
+      - path: "~ ^/_matrix/client/r0/rooms/([^/]*)/report/(.*)$"
+        pass: "/api/1/report/$1/$2"
+        add_cors: true
   - name: federation_reader
     port: 8011
     locations:
diff --git a/roles/matrix/templates/mjolnir.yaml.j2 b/roles/matrix/templates/mjolnir.yaml.j2
index 4ce40cd3388dd2f447ef0551184bf30c0c705732..897e172bca4efe05c250c97205227773ec354315 100644
--- a/roles/matrix/templates/mjolnir.yaml.j2
+++ b/roles/matrix/templates/mjolnir.yaml.j2
@@ -167,7 +167,7 @@ health:
 # Options for exposing web APIs.
 web:
   # Whether to enable web APIs.
-  enabled: false
+  enabled: true
 
   # The port to expose the webserver on. Defaults to 8080.
   port: 8010
diff --git a/roles/matrix/templates/nginx.d.conf.j2 b/roles/matrix/templates/nginx.d.conf.j2
index 9492e18f61e762de74fe6b6c09d49024ae5a0747..bf32f4e97d15e1b0040dfdd279bd3e34ab77a06d 100644
--- a/roles/matrix/templates/nginx.d.conf.j2
+++ b/roles/matrix/templates/nginx.d.conf.j2
@@ -37,10 +37,18 @@ server {
 {% for config in matrix_nginx_config %}
     # {{ config.name }}
 {% for location in config.locations %}
-    location {{ location }} {
+{% if location is string %}
+{% set location = { 'path': location } %}
+{% endif %}
+    location {{ location.path }} {
         access_log /var/log/nginx/{{ matrix_domain }}/access.log main;
         access_log /var/log/nginx/{{ matrix_domain }}/access.log.json json_main;
-        proxy_pass http://matrix_{{ config.name }};
+{% if location.add_cors | default(false) %}
+        add_header Access-Control-Allow-Origin *;
+        add_header Access-Control-Allow-Methods "GET, HEAD, POST, PUT, DELETE, OPTIONS";
+        add_header Access-Control-Allow-Headers "X-Requested-With, Content-Type, Authorization, Date";
+{% endif %}
+        proxy_pass http://matrix_{{ config.name }}{{ location.pass | default('') }};
         proxy_set_header X-Forwarded-For $remote_addr;
         proxy_set_header X-Forwarded-Proto $scheme;
         proxy_set_header Host $host;