diff --git a/README.md b/README.md
index 53b7eb4ab562026f7ae17da2fdfb9ec3ebfc1684..bea7f5901075405c6be33d566a0853a7bcad35aa 100644
--- a/README.md
+++ b/README.md
@@ -79,12 +79,11 @@ Note that this local server will only work inside Docker.
 
 ### User groups
 
-Two groups have a special meaning in Arkindex: The `Demo` group, for demo users, and the `Internal` group, for special users whose tokens are used by workers. Those groups are configured using the `INTERNAL_GROUP_ID` and `DEMO_GROUP_ID` settings. The development server will show warnings but let you start the server anyway if the group aren't there; you will be able to access the Django admin and create the groups from there. To create them using the shell:
+One group has a special meaning in Arkindex: The `Internal` group, for special users whose tokens are used by workers. This groups is configured using the `INTERNAL_GROUP_ID` setting. The development server will show warnings but let you start the server anyway if the group isn't there; you will be able to access the Django admin and create the group from there. To create them using the shell:
 
 ```
 backend/arkindex$ ./manage.py shell
 >>> from django.contrib.auth.models import Group
->>> Group.objects.create(id=1, name='Demo')
 >>> Group.objects.create(id=2, name='Internal')
 ```
 
diff --git a/arkindex/dataimport/api.py b/arkindex/dataimport/api.py
index 75444192de9d3771e1875ef8b7437a5905e9a3d7..8cb7d3424849ff6d13d9e542d938e8e481c8ae21 100644
--- a/arkindex/dataimport/api.py
+++ b/arkindex/dataimport/api.py
@@ -1,4 +1,4 @@
-from django.db.models import Sum, Max
+from django.db.models import Max
 from django.http.response import Http404
 from django.shortcuts import get_object_or_404
 from django.core.exceptions import PermissionDenied
@@ -241,53 +241,6 @@ class CorpusWorkflow(CreateAPIView):
         )
 
 
-class DataImportDemo(CorpusACLMixin, CreateAPIView):
-    """
-    Create, configure and start an Images workflow from a single DataFile
-    """
-
-    permission_classes = (IsAuthenticated, )
-    serializer_class = DataImportSerializer
-
-    def create(self, request, pk=None, **kwargs):
-
-        # Get Datafile
-        corpora = Corpus.objects.writable(self.request.user)
-        datafile = get_object_or_404(DataFile, corpus__in=corpora, id=pk)
-
-        # Get volume, defaults to demo one
-        volume_id = self.request.query_params.get('volume')
-        filters = {
-            'corpus': datafile.corpus,
-            'type': ElementType.Volume,
-        }
-        if volume_id:
-            filters['id'] = volume_id
-        else:
-            filters['name'] = 'Demo'
-
-        volume = get_object_or_404(Element, **filters)
-
-        assert self.has_write_access(volume.corpus), 'Corpus is not writable'
-
-        import_mode = DataImportMode.PDF if datafile.content_type == 'application/pdf' else DataImportMode.Images
-
-        # Start the import
-        dataimport = datafile.corpus.imports.create(
-            creator=self.request.user,
-            mode=import_mode,
-            payload={
-                'volume_id': str(volume.id),
-                'folder_name': 'user-{}-demo'.format(self.request.user.id),
-                'ml_tools': settings.DEMO_ML_TOOLS,
-            },
-        )
-        dataimport.files.add(datafile)
-        dataimport.start()
-
-        return Response(data=self.get_serializer(dataimport).data, status=status.HTTP_201_CREATED)
-
-
 class DataFileList(CorpusACLMixin, ListAPIView):
     """
     List uploaded files
@@ -341,11 +294,6 @@ class DataFileUpload(CorpusACLMixin, APIView):
 
         file_obj = request.FILES['file']
 
-        if self.request.user.groups.filter(name="Demo").exists() and \
-                corpus.files.exists() and \
-                corpus.files.aggregate(Sum('size'))['size__sum'] + file_obj.size > settings.DEMO_FILES_LIMIT:
-            raise ValidationError("Corpus total file size limit exceeded")
-
         md5hash = hashlib.md5()
         for chunk in file_obj.chunks():
             md5hash.update(chunk)
diff --git a/arkindex/dataimport/tests/test_files.py b/arkindex/dataimport/tests/test_files.py
index 59ea50f20101b11d3a5b5de139549b9629545e04..d90dad18693c6867f16247754c44c73b9409db54 100644
--- a/arkindex/dataimport/tests/test_files.py
+++ b/arkindex/dataimport/tests/test_files.py
@@ -8,11 +8,10 @@ from arkindex.dataimport.models import DataFile
 from arkindex.images.models import ImageServer
 from arkindex.project.tests import FixtureAPITestCase
 from arkindex.project.aws import S3FileStatus
-from arkindex.users.models import User
 import uuid
 
 
-@override_settings(DEMO_GROUP_ID=2, AWS_STAGING_BUCKET='staging')
+@override_settings(AWS_STAGING_BUCKET='staging')
 class TestFiles(FixtureAPITestCase):
     """
     Test file management
@@ -21,8 +20,6 @@ class TestFiles(FixtureAPITestCase):
     @classmethod
     def setUpTestData(cls):
         super().setUpTestData()
-        cls.demo_user = User.objects.get(email='demo@demo.fr')
-        cls.demo_user.corpus_right.create(corpus=cls.corpus, can_write=True)
         cls.df = DataFile.objects.create(
             name='test.txt',
             size=42,
@@ -169,16 +166,3 @@ class TestFiles(FixtureAPITestCase):
 
         self.assertEqual(s3_mock.Object.call_count, 1)
         self.assertEqual(s3_mock.Object().upload_fileobj.call_count, 1)
-
-    def test_file_upload_demo_limit(self):
-        """
-        Assert a file upload fails for demo users when its size exceeds the corpus limit
-        """
-        self.client.force_login(self.demo_user)
-        # Create a file one byte under the allowed size
-        DataFile.objects.create(
-            name='image.jpg', size=52428799, hash='bbbb', content_type='text/plain', corpus=self.corpus)
-        # Another file of more than one byte in size
-        f = SimpleUploadedFile('test.txt', b'This is a text file')
-        response = self.client.post(reverse('api:file-upload', kwargs={'pk': self.corpus.id}), data={'file': f})
-        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
diff --git a/arkindex/dataimport/tests/test_imports.py b/arkindex/dataimport/tests/test_imports.py
index d3d2addc0d4e10b7b1ae4cb7633c0a0652b835e2..854292a7829e35cc193627a0f787c743b6e8c1ec 100644
--- a/arkindex/dataimport/tests/test_imports.py
+++ b/arkindex/dataimport/tests/test_imports.py
@@ -4,7 +4,7 @@ from rest_framework import status
 from arkindex_common.ml_tool import MLToolType
 from arkindex_common.enums import DataImportMode, DataImportPDFEngine
 from arkindex.dataimport.models import DataImport, DataFile
-from arkindex.documents.models import Element, ElementType, Corpus
+from arkindex.documents.models import Element, Corpus
 from arkindex.project.tests import FixtureAPITestCase
 from ponos.models import State
 import uuid
@@ -21,11 +21,6 @@ class TestImports(FixtureAPITestCase):
         cls.creds = cls.user.credentials.get()
         cls.repo = cls.creds.repos.get()
         cls.rev = cls.repo.revisions.get()
-        cls.demo_volume = cls.corpus.elements.create(
-            type=ElementType.Volume,
-            new_type=cls.corpus.himanis_volume,
-            name='Demo',
-        )
         cls.img_df = DataFile.objects.create(
             name='test.jpg', size=42, hash='aaaa', content_type='image/jpg', corpus=cls.corpus)
         cls.pdf_df = DataFile.objects.create(
@@ -132,48 +127,6 @@ class TestImports(FixtureAPITestCase):
         data = response.json()
         self.assertEqual(data['id'], str(self.dataimport.id))
 
-    def test_start_demo_requires_login(self):
-        response = self.client.post(reverse('api:import-demo', kwargs={'pk': self.img_df.id}))
-        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
-
-    @patch('arkindex_common.ml_tool.MLTool.get')
-    def test_start_demo(self, ml_get_mock):
-        classifier_mock, recognizer_mock = MagicMock(), MagicMock()
-        classifier_mock.slug = 'someclassifier'
-        recognizer_mock.slug = 'somerecognizer'
-        classifier_mock.get_task_recipe.return_value = {'image': 'some_image1', 'command': 'some_command1'}
-        recognizer_mock.get_task_recipe.return_value = {'image': 'some_image2', 'command': 'some_command2'}
-        ml_get_mock.side_effect = [classifier_mock, recognizer_mock] * 2
-        self.client.force_login(self.user)
-
-        with self.settings(
-                ML_CLASSIFIERS_DIR='/somewhere',
-                DEMO_ML_TOOLS=[
-                    {'type': 'classifier', 'slug': 'someclassifier'},
-                    {'type': 'recognizer', 'slug': 'somerecognizer'},
-                ]):
-            response = self.client.post(reverse('api:import-demo', kwargs={'pk': self.img_df.id}))
-
-        self.assertEqual(response.status_code, status.HTTP_201_CREATED)
-        data = response.json()
-        dataimport = DataImport.objects.get(id=data['id'])
-        self.assertEqual(dataimport.mode, DataImportMode.Images)
-        self.assertEqual(dataimport.workflow.state, State.Unscheduled)
-        self.assertListEqual(list(dataimport.files.all()), [self.img_df])
-        self.assertDictEqual(dataimport.payload, {
-            'volume_id': str(self.demo_volume.id),
-            'folder_name': 'user-{}-demo'.format(self.user.id),
-            'ml_tools': [
-                {'type': 'classifier', 'slug': 'someclassifier'},
-                {'type': 'recognizer', 'slug': 'somerecognizer'},
-            ],
-        })
-        self.assertEqual(ml_get_mock.call_count, 2)
-        self.assertListEqual(ml_get_mock.call_args_list, [
-            call('/somewhere', MLToolType.Classifier, 'someclassifier'),
-            call('/somewhere', MLToolType.Recognizer, 'somerecognizer'),
-        ])
-
     def test_retry_requires_login(self):
         response = self.client.post(reverse('api:import-retry', kwargs={'pk': self.dataimport.id}))
         self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
@@ -336,19 +289,20 @@ class TestImports(FixtureAPITestCase):
 
     def test_from_files_volume_id(self):
         self.client.force_login(self.user)
+        volume = self.corpus.elements.get(name='Volume 1')
         response = self.client.post(
             reverse('api:import-from-files'),
             {
                 'files': [str(self.pdf_df.id)],
                 'mode': 'pdf',
-                'volume_id': str(self.demo_volume.id),
+                'volume_id': str(volume.id),
             },
             format='json',
         )
         self.assertEqual(response.status_code, status.HTTP_201_CREATED)
         data = response.json()
         dataimport = DataImport.objects.get(id=data['id'])
-        self.assertEqual(dataimport.payload['volume_id'], str(self.demo_volume.id))
+        self.assertEqual(dataimport.payload['volume_id'], str(volume.id))
 
     def test_from_files_volume_name(self):
         self.client.force_login(self.user)
diff --git a/arkindex/documents/fixtures/data.json b/arkindex/documents/fixtures/data.json
index fd4ad74c8e8f4008658ae4fdf0079cad91611726..326e72c2934b6cebc0a6164d3a44f0ddaad2416a 100644
--- a/arkindex/documents/fixtures/data.json
+++ b/arkindex/documents/fixtures/data.json
@@ -1,22 +1,22 @@
 [
 {
     "model": "dataimport.repository",
-    "pk": "8e75109a-2d56-408d-acaa-1dae53c591e8",
+    "pk": "a970f92a-d3aa-4226-b542-d676876d9398",
     "fields": {
         "url": "http://gitlab/repo",
         "hook_token": "hook-token",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "credentials": "63b9b740-aa84-4067-96bc-6d335ae02f0f",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "credentials": "864eaa71-394c-4a11-9c22-e43ac32a6fa1",
         "provider_name": "GitLabProvider"
     }
 },
 {
     "model": "dataimport.revision",
-    "pk": "7edef340-736b-4e60-85f1-1ee63d33eca0",
+    "pk": "13b7f26e-4e50-464f-8d1f-e4c124bb35e4",
     "fields": {
-        "created": "2019-10-10T07:40:05.963Z",
-        "updated": "2019-10-10T07:40:05.963Z",
-        "repo": "8e75109a-2d56-408d-acaa-1dae53c591e8",
+        "created": "2019-10-10T13:51:52.497Z",
+        "updated": "2019-10-10T13:51:52.497Z",
+        "repo": "a970f92a-d3aa-4226-b542-d676876d9398",
         "hash": "42",
         "ref": "refs/heads/master",
         "message": "a",
@@ -25,7 +25,7 @@
 },
 {
     "model": "documents.corpus",
-    "pk": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+    "pk": "8b2a738e-58da-4ea9-ae07-308d4600b313",
     "fields": {
         "name": "Unit Tests",
         "description": "",
@@ -34,20 +34,20 @@
 },
 {
     "model": "documents.elementnewtype",
-    "pk": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
+    "pk": "2653d07a-cd06-43d1-a52b-f56626e45d10",
     "fields": {
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "slug": "act",
-        "display_name": "Act",
-        "folder": false,
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "slug": "volume",
+        "display_name": "Volume",
+        "folder": true,
         "hidden": false
     }
 },
 {
     "model": "documents.elementnewtype",
-    "pk": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
+    "pk": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
     "fields": {
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "slug": "page",
         "display_name": "Page",
         "folder": false,
@@ -56,429 +56,429 @@
 },
 {
     "model": "documents.elementnewtype",
-    "pk": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
+    "pk": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
     "fields": {
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "slug": "surface",
-        "display_name": "Surface",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "slug": "act",
+        "display_name": "Act",
         "folder": false,
-        "hidden": true
+        "hidden": false
     }
 },
 {
     "model": "documents.elementnewtype",
-    "pk": "e73d72d8-40fc-43e5-a61d-33bb8c65e565",
+    "pk": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
     "fields": {
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "slug": "volume",
-        "display_name": "Volume",
-        "folder": true,
-        "hidden": false
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "slug": "surface",
+        "display_name": "Surface",
+        "folder": false,
+        "hidden": true
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "0f3c9849-1250-4f6b-ae21-77d4f0218409",
+    "pk": "06f2d9b8-b35a-4b57-87a5-7e3265d91712",
     "fields": {
-        "element": "a1ea12fd-797b-4740-bb16-7e1007ba2c1f",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
+        "element": "ccd0f568-2398-4ebe-98db-e2e881a97e87",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
         "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "16e838d5-1b88-41f0-bc04-04a7d35ad9b4",
+    "pk": "0878b7ef-e100-4c0a-9281-bd47367fa745",
     "fields": {
-        "element": "1574d1f3-c377-4c61-96ec-32eec29b7c72",
-        "path": "[\"cad2d9c0-b58c-4f6e-96e8-e69fb1125d03\"]",
+        "element": "f5d5860f-6549-421c-beeb-1a273ac9eab6",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"f733721a-a62f-4b3d-acf5-bebe36a2a83b\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "197f43e2-eb04-4247-bf40-e779a562000c",
+    "pk": "0e72adf3-2241-468d-b52c-3f74b81d257f",
     "fields": {
-        "element": "a9f496cb-ebf8-4ff3-b3ea-516dd29b8989",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
-        "ordering": 4
+        "element": "70db5a2d-ee0d-43fa-80d5-45c7f304e831",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"ccd0f568-2398-4ebe-98db-e2e881a97e87\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "19a03aa8-de3f-44c4-a3e5-a3be1f2adc36",
+    "pk": "17a28c7c-862d-4539-88f2-9f92f9525952",
     "fields": {
-        "element": "103fd0ec-3edf-458f-ba32-d7d9da387234",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"a9f496cb-ebf8-4ff3-b3ea-516dd29b8989\"]",
-        "ordering": 0
+        "element": "56efc721-430c-4093-9a6a-06c8403582bb",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
+        "ordering": 3
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "61d44478-f66e-4642-9e29-f09ee05d4cc7",
+    "pk": "25b1ec5a-77f0-4385-bd9a-3d1ce5c3e7cc",
     "fields": {
-        "element": "47041a98-fcf6-4f1c-8335-c3864fd65470",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
-        "ordering": 0
+        "element": "25a8a0d3-4336-433d-a177-3723f8317cec",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "673be758-0fd9-4160-9b1d-3bbde5ff52ee",
+    "pk": "4b6a0b04-9318-461d-8c63-23b80764c1ab",
     "fields": {
-        "element": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
-        "ordering": 1
+        "element": "533ed99e-4143-4336-826e-690d2e19d704",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"56efc721-430c-4093-9a6a-06c8403582bb\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "6eb7e16a-6e67-45f2-802c-646d4f6c7cf7",
+    "pk": "542048b0-5fd6-4956-8c2e-1acbeb816d82",
     "fields": {
-        "element": "11728319-9a14-4932-8921-b73a89f51aa0",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
-        "ordering": 3
+        "element": "f733721a-a62f-4b3d-acf5-bebe36a2a83b",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
+        "ordering": 4
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "75681750-a119-4c32-9412-2ec255f9a5f1",
+    "pk": "56e4b067-7293-482c-88e9-266fdf70678e",
     "fields": {
-        "element": "9606c234-8592-4643-8b8f-c53a81f4cf29",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"a1ea12fd-797b-4740-bb16-7e1007ba2c1f\"]",
-        "ordering": 0
+        "element": "fc59eb28-d05a-4c4e-ad4a-c264440ea09e",
+        "path": "[\"7b001406-144e-4d0b-a9f0-8481ba92a036\"]",
+        "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "7d083e8e-f813-4470-82a2-6ba01e84c95a",
+    "pk": "7dd2bebc-3c84-4afe-a7dc-a220e0ef4861",
     "fields": {
-        "element": "8e6aaa07-5a48-45c9-a112-52bca4900d10",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
+        "element": "473a52e5-fd1c-41c3-b4b9-1f519bbab5dc",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
         "ordering": 2
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "a1f7b5fb-2afb-41e2-87f1-bbe30dca8681",
+    "pk": "849da55e-9339-445c-9277-dc12cb5bd072",
     "fields": {
-        "element": "dc66d3a0-a17b-4a2a-a081-bab43ddfab92",
-        "path": "[\"cad2d9c0-b58c-4f6e-96e8-e69fb1125d03\"]",
-        "ordering": 2
+        "element": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "a339c5ae-07d7-4cfc-b151-5d98922f9833",
+    "pk": "85766043-a8e3-49ed-83a4-bebd8fa3d6c0",
     "fields": {
-        "element": "60161357-74cc-4f3d-94ff-164e9017fcd0",
-        "path": "[\"cad2d9c0-b58c-4f6e-96e8-e69fb1125d03\"]",
-        "ordering": 1
+        "element": "d8144dad-387e-495d-a1be-82bf432896c4",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"473a52e5-fd1c-41c3-b4b9-1f519bbab5dc\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "ad805965-0b41-421e-ba29-cf7c53207933",
+    "pk": "b1a33979-2528-4a59-b4ec-425c31f9ad3b",
     "fields": {
-        "element": "a23cd241-3555-4f92-a589-f36c8381bb84",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"8e6aaa07-5a48-45c9-a112-52bca4900d10\"]",
+        "element": "430007cf-d72d-436f-bcf3-dec67abf9622",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"51bcf16f-17db-4e46-9855-0c6b8f9387df\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "b0897041-e41f-4626-85fc-f2acf70dbf70",
+    "pk": "b527b997-0279-410d-b9a2-401b5c665670",
     "fields": {
-        "element": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
+        "element": "99ecbf86-2def-4f49-8f89-eb90dac8f2cd",
+        "path": "[\"7b001406-144e-4d0b-a9f0-8481ba92a036\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "c46b90f5-6794-4af2-9eb3-9065ca0d17c5",
+    "pk": "d0861c4f-1b59-49f3-8654-9da7a16bb621",
     "fields": {
-        "element": "3ccc3aea-a276-4fa8-bab7-d050ecbe456a",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"47041a98-fcf6-4f1c-8335-c3864fd65470\"]",
+        "element": "51bcf16f-17db-4e46-9855-0c6b8f9387df",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
         "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "c5877ee2-d76f-42da-87b8-32ca0dbeaca2",
+    "pk": "f363d45e-e56b-4b31-9197-5cfd4468c1ba",
     "fields": {
-        "element": "08d2415d-6943-4e5e-9434-a876e10dfbbb",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"11728319-9a14-4932-8921-b73a89f51aa0\"]",
-        "ordering": 0
+        "element": "94cff6b9-cfcc-49cb-8a5b-079875822cb2",
+        "path": "[\"7b001406-144e-4d0b-a9f0-8481ba92a036\"]",
+        "ordering": 1
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "fc6bc183-a2f0-41e1-92e4-fbd2830c61cb",
+    "pk": "f80c13ca-0f0d-4d57-a6af-2d1d9352f484",
     "fields": {
-        "element": "443ea887-8ab2-491b-bd8f-1ce1bb30ccd3",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\", \"a1ea12fd-797b-4740-bb16-7e1007ba2c1f\"]",
-        "ordering": 1
+        "element": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.elementpath",
-    "pk": "ff6a31e1-a729-4f29-97a7-deb93e67eae5",
+    "pk": "fa998d45-2835-4dc6-b834-ec2f055655da",
     "fields": {
-        "element": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
-        "path": "[\"79a54840-74c1-4047-9e64-a28740741c6d\"]",
-        "ordering": 2
+        "element": "baeead47-ca72-41a5-b752-2a08f02da0e5",
+        "path": "[\"12489680-5e6b-4576-8f26-cd432c90d31c\", \"ccd0f568-2398-4ebe-98db-e2e881a97e87\"]",
+        "ordering": 0
     }
 },
 {
     "model": "documents.element",
-    "pk": "08d2415d-6943-4e5e-9434-a876e10dfbbb",
+    "pk": "12489680-5e6b-4576-8f26-cd432c90d31c",
     "fields": {
-        "created": "2019-10-10T07:40:05.913Z",
-        "updated": "2019-10-10T07:40:05.913Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
-        "name": "Surface E",
-        "zone": "e9e62a07-a15c-4aee-b1b8-094d563c1fe4"
+        "created": "2019-10-10T13:51:52.264Z",
+        "updated": "2019-10-10T13:51:52.264Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "volume",
+        "new_type": "2653d07a-cd06-43d1-a52b-f56626e45d10",
+        "name": "Volume 1",
+        "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "103fd0ec-3edf-458f-ba32-d7d9da387234",
+    "pk": "25a8a0d3-4336-433d-a177-3723f8317cec",
     "fields": {
-        "created": "2019-10-10T07:40:05.915Z",
-        "updated": "2019-10-10T07:40:05.915Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.269Z",
+        "updated": "2019-10-10T13:51:52.269Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "page",
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
+        "name": "Volume 1, page 2r",
+        "zone": "3ee8f69b-0a96-42fa-bab9-533cccf76432"
+    }
+},
+{
+    "model": "documents.element",
+    "pk": "430007cf-d72d-436f-bcf3-dec67abf9622",
+    "fields": {
+        "created": "2019-10-10T13:51:52.438Z",
+        "updated": "2019-10-10T13:51:52.439Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
-        "name": "Surface F",
-        "zone": "81b398af-b60d-42e7-89a0-d734d081ddae"
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
+        "name": "Surface A",
+        "zone": "533e2907-4cc6-43cb-a10d-74fe9f53aecf"
     }
 },
 {
     "model": "documents.element",
-    "pk": "11728319-9a14-4932-8921-b73a89f51aa0",
+    "pk": "473a52e5-fd1c-41c3-b4b9-1f519bbab5dc",
     "fields": {
-        "created": "2019-10-10T07:40:05.842Z",
-        "updated": "2019-10-10T07:40:05.842Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.371Z",
+        "updated": "2019-10-10T13:51:52.371Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "act",
-        "new_type": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
-        "name": "Act 4",
+        "new_type": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
+        "name": "Act 3",
         "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "1574d1f3-c377-4c61-96ec-32eec29b7c72",
+    "pk": "51bcf16f-17db-4e46-9855-0c6b8f9387df",
     "fields": {
-        "created": "2019-10-10T07:40:05.782Z",
-        "updated": "2019-10-10T07:40:05.782Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
-        "name": "Volume 2, page 1r",
-        "zone": "b905e286-e1b1-4664-be53-f1bda517489d"
+        "created": "2019-10-10T13:51:52.370Z",
+        "updated": "2019-10-10T13:51:52.370Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "act",
+        "new_type": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
+        "name": "Act 1",
+        "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
+    "pk": "533ed99e-4143-4336-826e-690d2e19d704",
     "fields": {
-        "created": "2019-10-10T07:40:05.740Z",
-        "updated": "2019-10-10T07:40:05.740Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
-        "name": "Volume 1, page 2r",
-        "zone": "29b7a5a2-2a02-4087-a1b7-d920c8428f47"
+        "created": "2019-10-10T13:51:52.446Z",
+        "updated": "2019-10-10T13:51:52.446Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "surface",
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
+        "name": "Surface E",
+        "zone": "9fa227fa-ab53-41d6-9ac9-e46b9a081147"
     }
 },
 {
     "model": "documents.element",
-    "pk": "3ccc3aea-a276-4fa8-bab7-d050ecbe456a",
+    "pk": "56efc721-430c-4093-9a6a-06c8403582bb",
     "fields": {
-        "created": "2019-10-10T07:40:05.906Z",
-        "updated": "2019-10-10T07:40:05.906Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
-        "name": "Surface A",
-        "zone": "5b67f6a4-8038-406e-9d40-9ebeb72ea386"
+        "created": "2019-10-10T13:51:52.372Z",
+        "updated": "2019-10-10T13:51:52.372Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "act",
+        "new_type": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
+        "name": "Act 4",
+        "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "443ea887-8ab2-491b-bd8f-1ce1bb30ccd3",
+    "pk": "70db5a2d-ee0d-43fa-80d5-45c7f304e831",
     "fields": {
-        "created": "2019-10-10T07:40:05.910Z",
-        "updated": "2019-10-10T07:40:05.910Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.442Z",
+        "updated": "2019-10-10T13:51:52.442Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
         "name": "Surface C",
-        "zone": "7e78c443-8b33-4655-adea-489a7bfad241"
+        "zone": "c7f77b49-692f-41ab-bca7-6dafec0df800"
     }
 },
 {
     "model": "documents.element",
-    "pk": "47041a98-fcf6-4f1c-8335-c3864fd65470",
+    "pk": "7b001406-144e-4d0b-a9f0-8481ba92a036",
     "fields": {
-        "created": "2019-10-10T07:40:05.839Z",
-        "updated": "2019-10-10T07:40:05.839Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "act",
-        "new_type": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
-        "name": "Act 1",
+        "created": "2019-10-10T13:51:52.265Z",
+        "updated": "2019-10-10T13:51:52.266Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "volume",
+        "new_type": "2653d07a-cd06-43d1-a52b-f56626e45d10",
+        "name": "Volume 2",
         "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "60161357-74cc-4f3d-94ff-164e9017fcd0",
+    "pk": "94cff6b9-cfcc-49cb-8a5b-079875822cb2",
     "fields": {
-        "created": "2019-10-10T07:40:05.783Z",
-        "updated": "2019-10-10T07:40:05.783Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.312Z",
+        "updated": "2019-10-10T13:51:52.312Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
         "name": "Volume 2, page 1v",
-        "zone": "7f9486f2-77fa-4fed-8806-2d98cadf95dd"
+        "zone": "050cf616-e41e-4471-b8a8-d94a21b1981f"
     }
 },
 {
     "model": "documents.element",
-    "pk": "79a54840-74c1-4047-9e64-a28740741c6d",
+    "pk": "99ecbf86-2def-4f49-8f89-eb90dac8f2cd",
     "fields": {
-        "created": "2019-10-10T07:40:05.734Z",
-        "updated": "2019-10-10T07:40:05.734Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "volume",
-        "new_type": "e73d72d8-40fc-43e5-a61d-33bb8c65e565",
-        "name": "Volume 1",
-        "zone": null
+        "created": "2019-10-10T13:51:52.311Z",
+        "updated": "2019-10-10T13:51:52.311Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "page",
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
+        "name": "Volume 2, page 1r",
+        "zone": "1bd04db8-1165-438f-9616-de20c3d1539b"
     }
 },
 {
     "model": "documents.element",
-    "pk": "8e6aaa07-5a48-45c9-a112-52bca4900d10",
+    "pk": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
     "fields": {
-        "created": "2019-10-10T07:40:05.841Z",
-        "updated": "2019-10-10T07:40:05.841Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "act",
-        "new_type": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
-        "name": "Act 3",
-        "zone": null
+        "created": "2019-10-10T13:51:52.268Z",
+        "updated": "2019-10-10T13:51:52.268Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "page",
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
+        "name": "Volume 1, page 1v",
+        "zone": "9d3020e8-9ec5-4229-a825-7b9a325f2499"
     }
 },
 {
     "model": "documents.element",
-    "pk": "9606c234-8592-4643-8b8f-c53a81f4cf29",
+    "pk": "baeead47-ca72-41a5-b752-2a08f02da0e5",
     "fields": {
-        "created": "2019-10-10T07:40:05.908Z",
-        "updated": "2019-10-10T07:40:05.908Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.440Z",
+        "updated": "2019-10-10T13:51:52.440Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
         "name": "Surface B",
-        "zone": "d9c4b25e-6a1e-48ca-a06c-826d528a20f6"
+        "zone": "10845be1-818b-412a-a544-319ab0072c86"
     }
 },
 {
     "model": "documents.element",
-    "pk": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
+    "pk": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
     "fields": {
-        "created": "2019-10-10T07:40:05.739Z",
-        "updated": "2019-10-10T07:40:05.739Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.267Z",
+        "updated": "2019-10-10T13:51:52.267Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
-        "name": "Volume 1, page 1v",
-        "zone": "a27df6df-8f8c-432f-917c-a43b312d6f10"
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
+        "name": "Volume 1, page 1r",
+        "zone": "0c3eeb62-2902-4d50-9939-4350c3ad2bce"
     }
 },
 {
     "model": "documents.element",
-    "pk": "a1ea12fd-797b-4740-bb16-7e1007ba2c1f",
+    "pk": "ccd0f568-2398-4ebe-98db-e2e881a97e87",
     "fields": {
-        "created": "2019-10-10T07:40:05.840Z",
-        "updated": "2019-10-10T07:40:05.840Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.370Z",
+        "updated": "2019-10-10T13:51:52.370Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "act",
-        "new_type": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
+        "new_type": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
         "name": "Act 2",
         "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "a23cd241-3555-4f92-a589-f36c8381bb84",
+    "pk": "d8144dad-387e-495d-a1be-82bf432896c4",
     "fields": {
-        "created": "2019-10-10T07:40:05.911Z",
-        "updated": "2019-10-10T07:40:05.911Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.444Z",
+        "updated": "2019-10-10T13:51:52.444Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "surface",
-        "new_type": "da8f4d60-5e07-407b-bdb3-c0fad7bc69c1",
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
         "name": "Surface D",
-        "zone": "c2cf121c-b619-449f-84f7-5b4a08a24718"
+        "zone": "c85cdbea-9d12-440e-ad88-26a5bacc409d"
     }
 },
 {
     "model": "documents.element",
-    "pk": "a9f496cb-ebf8-4ff3-b3ea-516dd29b8989",
+    "pk": "f5d5860f-6549-421c-beeb-1a273ac9eab6",
     "fields": {
-        "created": "2019-10-10T07:40:05.843Z",
-        "updated": "2019-10-10T07:40:05.843Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "act",
-        "new_type": "2b867824-3982-49ab-9be7-b5e0daa2aec2",
-        "name": "Act 5",
-        "zone": null
+        "created": "2019-10-10T13:51:52.447Z",
+        "updated": "2019-10-10T13:51:52.447Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "surface",
+        "new_type": "fd7d9092-6e2b-4f72-add6-b8e8848d098b",
+        "name": "Surface F",
+        "zone": "6513c839-7ac7-4a22-a772-8e31660fe7aa"
     }
 },
 {
     "model": "documents.element",
-    "pk": "cad2d9c0-b58c-4f6e-96e8-e69fb1125d03",
+    "pk": "f733721a-a62f-4b3d-acf5-bebe36a2a83b",
     "fields": {
-        "created": "2019-10-10T07:40:05.736Z",
-        "updated": "2019-10-10T07:40:05.736Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "volume",
-        "new_type": "e73d72d8-40fc-43e5-a61d-33bb8c65e565",
-        "name": "Volume 2",
+        "created": "2019-10-10T13:51:52.373Z",
+        "updated": "2019-10-10T13:51:52.373Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
+        "type": "act",
+        "new_type": "f521a0cc-fa9a-4315-80cd-6a15ee03ee4c",
+        "name": "Act 5",
         "zone": null
     }
 },
 {
     "model": "documents.element",
-    "pk": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
+    "pk": "fc59eb28-d05a-4c4e-ad4a-c264440ea09e",
     "fields": {
-        "created": "2019-10-10T07:40:05.737Z",
-        "updated": "2019-10-10T07:40:05.737Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "created": "2019-10-10T13:51:52.313Z",
+        "updated": "2019-10-10T13:51:52.313Z",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
-        "name": "Volume 1, page 1r",
-        "zone": "66040bb8-b8dc-4f28-891f-04d1e9e0ebcc"
-    }
-},
-{
-    "model": "documents.element",
-    "pk": "dc66d3a0-a17b-4a2a-a081-bab43ddfab92",
-    "fields": {
-        "created": "2019-10-10T07:40:05.784Z",
-        "updated": "2019-10-10T07:40:05.784Z",
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
-        "type": "page",
-        "new_type": "34c4f115-9ee1-4c08-9c9c-23063bf4b72e",
+        "new_type": "9fda56f0-3597-40db-a4c7-ea9ece7ef833",
         "name": "Volume 2, page 2r",
-        "zone": "1c1faa35-6419-4a5b-930e-bf367dd41a1f"
+        "zone": "01262094-d82a-410d-b0ba-22f3133ae206"
     }
 },
 {
     "model": "documents.datasource",
-    "pk": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
+    "pk": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
     "fields": {
         "type": "recognizer",
         "slug": "test",
@@ -489,120 +489,120 @@
 },
 {
     "model": "documents.transcription",
-    "pk": "2625c040-063b-4c68-98d0-a2367fb2f9c7",
+    "pk": "01d3a60c-2159-4967-8de5-2bb18ad51ef3",
     "fields": {
-        "element": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
+        "element": "25a8a0d3-4336-433d-a177-3723f8317cec",
         "type": "word",
-        "zone": "cd1fefd3-21f2-42ab-9192-7a9acbe37e41",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "ROY",
+        "zone": "468e770e-5d1c-4388-b743-dfcea7090f34",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "DATUM",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "6684b8cf-d86e-4c36-9e8d-da7597ae2a1a",
+    "pk": "0a82cd8b-e73a-4bf0-9dc2-3879724fe6a1",
     "fields": {
-        "element": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
+        "element": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
         "type": "word",
-        "zone": "ec0fdf3f-34d4-4dd1-9850-d28dbdf09b46",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "PARIS",
+        "zone": "b7104abf-b865-4f51-96cf-e97056c6f23d",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "ROY",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "67b57abc-c5c6-4f41-95c9-fff1d21ed1a4",
+    "pk": "1acab671-24f1-4f9b-9a15-1a9e3eea31a9",
     "fields": {
-        "element": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
+        "element": "25a8a0d3-4336-433d-a177-3723f8317cec",
         "type": "word",
-        "zone": "91beabb9-5e15-4f83-8ed1-aceb7cd7e5a3",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
+        "zone": "8025c8a4-96aa-41ee-9129-5cd26dd28f80",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
         "text": "PARIS",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "a8770f12-5614-4ac1-9b95-5696334bb7b8",
+    "pk": "39a4c73a-6b90-4e11-8a32-0b52880ccd49",
     "fields": {
-        "element": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
+        "element": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
         "type": "word",
-        "zone": "4236d58b-b58c-42dd-aaf6-24321c84ec77",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "DATUM",
+        "zone": "e3cf5630-f35d-4103-87f8-99e914641e66",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "PARIS",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "af544987-a320-4cab-8353-5ca032882e2a",
+    "pk": "44ad18b7-4a65-4411-ab32-b37356fe7ae6",
     "fields": {
-        "element": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
+        "element": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
         "type": "word",
-        "zone": "2e8c737b-bbdd-425e-922b-ce5ce8e5131c",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "ROY",
+        "zone": "b071ffe2-330a-4b02-abb5-d93b127ff437",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "DATUM",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "e68bb1e9-6508-471e-babb-f13f84f9fa08",
+    "pk": "99ec1f90-fbbc-4cd7-a778-521224724c54",
     "fields": {
-        "element": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
+        "element": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
         "type": "word",
-        "zone": "9e93836b-0cfc-4b81-aff4-c9b5c588a77b",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "ROY",
+        "zone": "3fafe032-16a9-46ff-a18e-2781d4710e28",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "DATUM",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "f3302460-b3c6-4605-88b3-b93368409b8d",
+    "pk": "9ca5598d-f99b-4bed-bd28-605d8c10dc71",
     "fields": {
-        "element": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
+        "element": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
         "type": "word",
-        "zone": "2e5d6231-d059-4e0f-ab49-aeebebbe3840",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "DATUM",
+        "zone": "4dd4d158-e63d-4aa7-943a-d3201eb07b08",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "PARIS",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "f45a1d70-17f1-413d-9884-bf9e249bd0f6",
+    "pk": "bd36334c-9a6f-4e1f-8220-8c7b6e884483",
     "fields": {
-        "element": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
+        "element": "25a8a0d3-4336-433d-a177-3723f8317cec",
         "type": "word",
-        "zone": "fa353f3d-8603-4472-8527-af2c51cbc6b7",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "DATUM",
+        "zone": "b362f834-e05e-4aaa-bb33-2a35cf474587",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "ROY",
         "score": 1.0
     }
 },
 {
     "model": "documents.transcription",
-    "pk": "fe41c848-8691-449a-8478-6d942e112f36",
+    "pk": "c2d39042-ca36-4908-80ce-7e8cf99d7fec",
     "fields": {
-        "element": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
+        "element": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
         "type": "word",
-        "zone": "f27c52af-95b1-4f4d-b585-f0ba8b22cd0c",
-        "source": "ba2cab77-772c-4ac1-8e12-945a39bf3be7",
-        "text": "PARIS",
+        "zone": "65f0dbed-daae-44b6-9a20-ec1eeeb4eb1b",
+        "source": "92a32b45-04f2-4a24-b7b8-b04a17ea87fc",
+        "text": "ROY",
         "score": 1.0
     }
 },
 {
     "model": "documents.metadata",
-    "pk": "1a785084-00e4-40ef-8f6d-ba6e5d5ef2f4",
+    "pk": "096a120e-9a26-4a5f-9fb4-d32d322e9ff4",
     "fields": {
-        "element": "11728319-9a14-4932-8921-b73a89f51aa0",
+        "element": "51bcf16f-17db-4e46-9855-0c6b8f9387df",
         "name": "number",
         "type": "text",
-        "value": "4",
+        "value": "1",
         "revision": null,
         "index": 0,
         "entity": null
@@ -610,12 +610,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "1ba5d6b8-6d93-4de9-b3ec-9f1cc8b33c6a",
+    "pk": "357eefa3-fa8e-485b-bd00-becb413f8105",
     "fields": {
-        "element": "9e23d130-d290-43bc-abf0-94b4031b9f4e",
-        "name": "folio",
+        "element": "56efc721-430c-4093-9a6a-06c8403582bb",
+        "name": "number",
         "type": "text",
-        "value": "1v",
+        "value": "4",
         "revision": null,
         "index": 0,
         "entity": null
@@ -623,12 +623,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "71c797db-c26b-429f-8814-23d195e4a865",
+    "pk": "4e0646a2-266b-4611-b7c7-0d919ffcaa0c",
     "fields": {
-        "element": "8e6aaa07-5a48-45c9-a112-52bca4900d10",
-        "name": "number",
+        "element": "fc59eb28-d05a-4c4e-ad4a-c264440ea09e",
+        "name": "folio",
         "type": "text",
-        "value": "3",
+        "value": "2r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -636,12 +636,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "b178dc73-1ee3-479f-a1bb-9015cd389ae2",
+    "pk": "63b0ef8b-8a8f-4095-80ca-4e01af3aadb4",
     "fields": {
-        "element": "d651379a-bcba-4bfc-b569-ae9b08657dfd",
+        "element": "25a8a0d3-4336-433d-a177-3723f8317cec",
         "name": "folio",
         "type": "text",
-        "value": "1r",
+        "value": "2r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -649,12 +649,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "c32b2188-18c9-44f4-b03c-78e44f4887e7",
+    "pk": "6602c2ba-a0b4-4cf8-b574-ac782817f524",
     "fields": {
-        "element": "a9f496cb-ebf8-4ff3-b3ea-516dd29b8989",
-        "name": "number",
+        "element": "99ecbf86-2def-4f49-8f89-eb90dac8f2cd",
+        "name": "folio",
         "type": "text",
-        "value": "5",
+        "value": "1r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -662,12 +662,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "c7c1c35f-66b6-4676-add0-d503b3284a89",
+    "pk": "6935c976-723d-4202-85c1-651b278f37be",
     "fields": {
-        "element": "1574d1f3-c377-4c61-96ec-32eec29b7c72",
-        "name": "folio",
+        "element": "ccd0f568-2398-4ebe-98db-e2e881a97e87",
+        "name": "number",
         "type": "text",
-        "value": "1r",
+        "value": "2",
         "revision": null,
         "index": 0,
         "entity": null
@@ -675,12 +675,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "d9dce97c-fa79-49f9-8d0c-60aa808768ce",
+    "pk": "71decc96-47c4-4577-8546-d5039e3f31ac",
     "fields": {
-        "element": "47041a98-fcf6-4f1c-8335-c3864fd65470",
-        "name": "number",
+        "element": "94cff6b9-cfcc-49cb-8a5b-079875822cb2",
+        "name": "folio",
         "type": "text",
-        "value": "1",
+        "value": "1v",
         "revision": null,
         "index": 0,
         "entity": null
@@ -688,12 +688,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "dbc38d48-5971-47df-ae76-ee0e2923f5f1",
+    "pk": "8a4960d8-685f-4a87-bc38-873b1db7556b",
     "fields": {
-        "element": "dc66d3a0-a17b-4a2a-a081-bab43ddfab92",
+        "element": "a0d53457-3ba5-4b2c-a394-783f96def8a2",
         "name": "folio",
         "type": "text",
-        "value": "2r",
+        "value": "1v",
         "revision": null,
         "index": 0,
         "entity": null
@@ -701,12 +701,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "e22e2af0-83d1-4094-aa66-c57122f12243",
+    "pk": "ba6fce00-dc16-4c2a-92bf-1fb4ee861c08",
     "fields": {
-        "element": "a1ea12fd-797b-4740-bb16-7e1007ba2c1f",
+        "element": "473a52e5-fd1c-41c3-b4b9-1f519bbab5dc",
         "name": "number",
         "type": "text",
-        "value": "2",
+        "value": "3",
         "revision": null,
         "index": 0,
         "entity": null
@@ -714,12 +714,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "e4d44b1a-36ff-4d9f-b5a3-71de05eb98ba",
+    "pk": "bfaa00a4-0cf3-478d-8a76-99ccd2c529fc",
     "fields": {
-        "element": "60161357-74cc-4f3d-94ff-164e9017fcd0",
+        "element": "c22c59a9-d30c-48e3-b12a-7612f4aa4793",
         "name": "folio",
         "type": "text",
-        "value": "1v",
+        "value": "1r",
         "revision": null,
         "index": 0,
         "entity": null
@@ -727,12 +727,12 @@
 },
 {
     "model": "documents.metadata",
-    "pk": "f53273f6-efc8-4e6c-a511-3c9d9dcd0117",
+    "pk": "f718ec26-ce61-44a8-ba4c-e4c3ba49ae7c",
     "fields": {
-        "element": "21954ad6-81b8-40e7-bbd4-8eae3eaab5ed",
-        "name": "folio",
+        "element": "f733721a-a62f-4b3d-acf5-bebe36a2a83b",
+        "name": "number",
         "type": "text",
-        "value": "2r",
+        "value": "5",
         "revision": null,
         "index": 0,
         "entity": null
@@ -746,21 +746,21 @@
         "url": "http://server",
         "s3_bucket": "iiif",
         "s3_region": null,
-        "created": "2019-10-10T07:40:05.468Z",
-        "updated": "2019-10-10T07:40:05.468Z",
+        "created": "2019-10-10T13:51:52.004Z",
+        "updated": "2019-10-10T13:51:52.004Z",
         "validated": false,
         "read_only": false
     }
 },
 {
     "model": "images.image",
-    "pk": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
+    "pk": "37d7745b-790c-4264-8e5f-756de43a4828",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.472Z",
-        "updated": "2019-10-10T07:40:05.472Z",
+        "created": "2019-10-10T13:51:52.012Z",
+        "updated": "2019-10-10T13:51:52.012Z",
         "server": 1,
-        "path": "img2",
+        "path": "img6",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -769,13 +769,13 @@
 },
 {
     "model": "images.image",
-    "pk": "1f4f1268-5bee-4435-8c43-c7b00d84c8d8",
+    "pk": "68370b5c-3243-4bc3-93d6-e76e5eb1f9b2",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.476Z",
-        "updated": "2019-10-10T07:40:05.476Z",
+        "created": "2019-10-10T13:51:52.010Z",
+        "updated": "2019-10-10T13:51:52.010Z",
         "server": 1,
-        "path": "img6",
+        "path": "img4",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -784,13 +784,13 @@
 },
 {
     "model": "images.image",
-    "pk": "5fb141e9-c6af-4822-921a-cec28f43d486",
+    "pk": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.475Z",
-        "updated": "2019-10-10T07:40:05.475Z",
+        "created": "2019-10-10T13:51:52.008Z",
+        "updated": "2019-10-10T13:51:52.008Z",
         "server": 1,
-        "path": "img5",
+        "path": "img2",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -799,13 +799,13 @@
 },
 {
     "model": "images.image",
-    "pk": "641d02db-29e1-46a2-bed5-8746126b978c",
+    "pk": "bb09c19b-b5f0-4ed2-bb5f-2fcffa9a86c4",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.474Z",
-        "updated": "2019-10-10T07:40:05.474Z",
+        "created": "2019-10-10T13:51:52.011Z",
+        "updated": "2019-10-10T13:51:52.011Z",
         "server": 1,
-        "path": "img4",
+        "path": "img5",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -814,13 +814,13 @@
 },
 {
     "model": "images.image",
-    "pk": "b1763b26-4c92-432b-a3ad-08bc3515e707",
+    "pk": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.470Z",
-        "updated": "2019-10-10T07:40:05.470Z",
+        "created": "2019-10-10T13:51:52.009Z",
+        "updated": "2019-10-10T13:51:52.009Z",
         "server": 1,
-        "path": "img1",
+        "path": "img3",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -829,13 +829,13 @@
 },
 {
     "model": "images.image",
-    "pk": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
+    "pk": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
     "fields": {
         "status": "unchecked",
-        "created": "2019-10-10T07:40:05.473Z",
-        "updated": "2019-10-10T07:40:05.473Z",
+        "created": "2019-10-10T13:51:52.006Z",
+        "updated": "2019-10-10T13:51:52.006Z",
         "server": 1,
-        "path": "img3",
+        "path": "img1",
         "width": 1000,
         "height": 1000,
         "datafile": null,
@@ -844,212 +844,212 @@
 },
 {
     "model": "images.zone",
-    "pk": "1c1faa35-6419-4a5b-930e-bf367dd41a1f",
+    "pk": "01262094-d82a-410d-b0ba-22f3133ae206",
     "fields": {
-        "created": "2019-10-10T07:40:05.482Z",
-        "updated": "2019-10-10T07:40:05.482Z",
-        "image": "1f4f1268-5bee-4435-8c43-c7b00d84c8d8",
+        "created": "2019-10-10T13:51:52.018Z",
+        "updated": "2019-10-10T13:51:52.018Z",
+        "image": "37d7745b-790c-4264-8e5f-756de43a4828",
         "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "29b7a5a2-2a02-4087-a1b7-d920c8428f47",
+    "pk": "050cf616-e41e-4471-b8a8-d94a21b1981f",
     "fields": {
-        "created": "2019-10-10T07:40:05.479Z",
-        "updated": "2019-10-10T07:40:05.479Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
+        "created": "2019-10-10T13:51:52.017Z",
+        "updated": "2019-10-10T13:51:52.017Z",
+        "image": "bb09c19b-b5f0-4ed2-bb5f-2fcffa9a86c4",
         "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "2e5d6231-d059-4e0f-ab49-aeebebbe3840",
+    "pk": "0c3eeb62-2902-4d50-9939-4350c3ad2bce",
     "fields": {
-        "created": "2019-10-10T07:40:05.838Z",
-        "updated": "2019-10-10T07:40:05.838Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
-        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
+        "created": "2019-10-10T13:51:52.013Z",
+        "updated": "2019-10-10T13:51:52.013Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
+        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "2e8c737b-bbdd-425e-922b-ce5ce8e5131c",
+    "pk": "10845be1-818b-412a-a544-319ab0072c86",
     "fields": {
-        "created": "2019-10-10T07:40:05.825Z",
-        "updated": "2019-10-10T07:40:05.825Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((400,400), (500,400), (500,500), (400,500), (400,400))"
+        "created": "2019-10-10T13:51:52.439Z",
+        "updated": "2019-10-10T13:51:52.439Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
+        "polygon": "Polygon((600,600), (1000,600), (1000,1000), (600,1000), (600,600))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "4236d58b-b58c-42dd-aaf6-24321c84ec77",
+    "pk": "1bd04db8-1165-438f-9616-de20c3d1539b",
     "fields": {
-        "created": "2019-10-10T07:40:05.827Z",
-        "updated": "2019-10-10T07:40:05.827Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
+        "created": "2019-10-10T13:51:52.016Z",
+        "updated": "2019-10-10T13:51:52.016Z",
+        "image": "68370b5c-3243-4bc3-93d6-e76e5eb1f9b2",
+        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "5b67f6a4-8038-406e-9d40-9ebeb72ea386",
+    "pk": "3ee8f69b-0a96-42fa-bab9-533cccf76432",
     "fields": {
-        "created": "2019-10-10T07:40:05.906Z",
-        "updated": "2019-10-10T07:40:05.906Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((0,0), (600,0), (600,600), (0,600), (0,0))"
+        "created": "2019-10-10T13:51:52.016Z",
+        "updated": "2019-10-10T13:51:52.016Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "66040bb8-b8dc-4f28-891f-04d1e9e0ebcc",
+    "pk": "3fafe032-16a9-46ff-a18e-2781d4710e28",
     "fields": {
-        "created": "2019-10-10T07:40:05.477Z",
-        "updated": "2019-10-10T07:40:05.477Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
+        "created": "2019-10-10T13:51:52.357Z",
+        "updated": "2019-10-10T13:51:52.357Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
+        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "7e78c443-8b33-4655-adea-489a7bfad241",
+    "pk": "468e770e-5d1c-4388-b743-dfcea7090f34",
     "fields": {
-        "created": "2019-10-10T07:40:05.909Z",
-        "updated": "2019-10-10T07:40:05.909Z",
-        "image": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
-        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
+        "created": "2019-10-10T13:51:52.368Z",
+        "updated": "2019-10-10T13:51:52.368Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "7f9486f2-77fa-4fed-8806-2d98cadf95dd",
+    "pk": "4dd4d158-e63d-4aa7-943a-d3201eb07b08",
     "fields": {
-        "created": "2019-10-10T07:40:05.481Z",
-        "updated": "2019-10-10T07:40:05.481Z",
-        "image": "5fb141e9-c6af-4822-921a-cec28f43d486",
-        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
+        "created": "2019-10-10T13:51:52.352Z",
+        "updated": "2019-10-10T13:51:52.353Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
+        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "81b398af-b60d-42e7-89a0-d734d081ddae",
+    "pk": "533e2907-4cc6-43cb-a10d-74fe9f53aecf",
     "fields": {
-        "created": "2019-10-10T07:40:05.914Z",
-        "updated": "2019-10-10T07:40:05.914Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
-        "polygon": "Polygon((600,600), (1000,600), (1000,1000), (600,1000), (600,600))"
+        "created": "2019-10-10T13:51:52.438Z",
+        "updated": "2019-10-10T13:51:52.438Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
+        "polygon": "Polygon((0,0), (600,0), (600,600), (0,600), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "91beabb9-5e15-4f83-8ed1-aceb7cd7e5a3",
+    "pk": "6513c839-7ac7-4a22-a772-8e31660fe7aa",
     "fields": {
-        "created": "2019-10-10T07:40:05.829Z",
-        "updated": "2019-10-10T07:40:05.829Z",
-        "image": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
-        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
+        "created": "2019-10-10T13:51:52.446Z",
+        "updated": "2019-10-10T13:51:52.446Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((600,600), (1000,600), (1000,1000), (600,1000), (600,600))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "9e93836b-0cfc-4b81-aff4-c9b5c588a77b",
+    "pk": "65f0dbed-daae-44b6-9a20-ec1eeeb4eb1b",
     "fields": {
-        "created": "2019-10-10T07:40:05.836Z",
-        "updated": "2019-10-10T07:40:05.836Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
+        "created": "2019-10-10T13:51:52.355Z",
+        "updated": "2019-10-10T13:51:52.355Z",
+        "image": "ece91a54-bbf5-49eb-8122-f7d3d7d825d7",
         "polygon": "Polygon((400,400), (500,400), (500,500), (400,500), (400,400))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "a27df6df-8f8c-432f-917c-a43b312d6f10",
+    "pk": "8025c8a4-96aa-41ee-9129-5cd26dd28f80",
     "fields": {
-        "created": "2019-10-10T07:40:05.478Z",
-        "updated": "2019-10-10T07:40:05.478Z",
-        "image": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
-        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
+        "created": "2019-10-10T13:51:52.364Z",
+        "updated": "2019-10-10T13:51:52.364Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "b905e286-e1b1-4664-be53-f1bda517489d",
+    "pk": "9d3020e8-9ec5-4229-a825-7b9a325f2499",
     "fields": {
-        "created": "2019-10-10T07:40:05.480Z",
-        "updated": "2019-10-10T07:40:05.480Z",
-        "image": "641d02db-29e1-46a2-bed5-8746126b978c",
+        "created": "2019-10-10T13:51:52.015Z",
+        "updated": "2019-10-10T13:51:52.015Z",
+        "image": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
         "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "c2cf121c-b619-449f-84f7-5b4a08a24718",
+    "pk": "9fa227fa-ab53-41d6-9ac9-e46b9a081147",
     "fields": {
-        "created": "2019-10-10T07:40:05.910Z",
-        "updated": "2019-10-10T07:40:05.910Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
-        "polygon": "Polygon((0,0), (300,0), (300,300), (0,300), (0,0))"
+        "created": "2019-10-10T13:51:52.445Z",
+        "updated": "2019-10-10T13:51:52.445Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((300,300), (600,300), (600,600), (300,600), (300,300))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "cd1fefd3-21f2-42ab-9192-7a9acbe37e41",
+    "pk": "b071ffe2-330a-4b02-abb5-d93b127ff437",
     "fields": {
-        "created": "2019-10-10T07:40:05.831Z",
-        "updated": "2019-10-10T07:40:05.831Z",
-        "image": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
-        "polygon": "Polygon((400,400), (500,400), (500,500), (400,500), (400,400))"
+        "created": "2019-10-10T13:51:52.363Z",
+        "updated": "2019-10-10T13:51:52.363Z",
+        "image": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
+        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "d9c4b25e-6a1e-48ca-a06c-826d528a20f6",
+    "pk": "b362f834-e05e-4aaa-bb33-2a35cf474587",
     "fields": {
-        "created": "2019-10-10T07:40:05.907Z",
-        "updated": "2019-10-10T07:40:05.907Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((600,600), (1000,600), (1000,1000), (600,1000), (600,600))"
+        "created": "2019-10-10T13:51:52.366Z",
+        "updated": "2019-10-10T13:51:52.366Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((400,400), (500,400), (500,500), (400,500), (400,400))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "e9e62a07-a15c-4aee-b1b8-094d563c1fe4",
+    "pk": "b7104abf-b865-4f51-96cf-e97056c6f23d",
     "fields": {
-        "created": "2019-10-10T07:40:05.912Z",
-        "updated": "2019-10-10T07:40:05.912Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
-        "polygon": "Polygon((300,300), (600,300), (600,600), (300,600), (300,300))"
+        "created": "2019-10-10T13:51:52.361Z",
+        "updated": "2019-10-10T13:51:52.361Z",
+        "image": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
+        "polygon": "Polygon((400,400), (500,400), (500,500), (400,500), (400,400))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "ec0fdf3f-34d4-4dd1-9850-d28dbdf09b46",
+    "pk": "c7f77b49-692f-41ab-bca7-6dafec0df800",
     "fields": {
-        "created": "2019-10-10T07:40:05.835Z",
-        "updated": "2019-10-10T07:40:05.835Z",
-        "image": "d1c8e1fd-2092-46ba-b6b7-bfe06c2e38cd",
-        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
+        "created": "2019-10-10T13:51:52.441Z",
+        "updated": "2019-10-10T13:51:52.441Z",
+        "image": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
+        "polygon": "Polygon((0,0), (1000,0), (1000,1000), (0,1000), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "f27c52af-95b1-4f4d-b585-f0ba8b22cd0c",
+    "pk": "c85cdbea-9d12-440e-ad88-26a5bacc409d",
     "fields": {
-        "created": "2019-10-10T07:40:05.823Z",
-        "updated": "2019-10-10T07:40:05.823Z",
-        "image": "b1763b26-4c92-432b-a3ad-08bc3515e707",
-        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
+        "created": "2019-10-10T13:51:52.443Z",
+        "updated": "2019-10-10T13:51:52.443Z",
+        "image": "c4e0ea85-d855-465f-8234-7333f8c2d6ea",
+        "polygon": "Polygon((0,0), (300,0), (300,300), (0,300), (0,0))"
     }
 },
 {
     "model": "images.zone",
-    "pk": "fa353f3d-8603-4472-8527-af2c51cbc6b7",
+    "pk": "e3cf5630-f35d-4103-87f8-99e914641e66",
     "fields": {
-        "created": "2019-10-10T07:40:05.833Z",
-        "updated": "2019-10-10T07:40:05.833Z",
-        "image": "0ac62750-47da-4fb4-8259-23c23f64b0b2",
-        "polygon": "Polygon((700,700), (800,700), (800,800), (700,800), (700,700))"
+        "created": "2019-10-10T13:51:52.359Z",
+        "updated": "2019-10-10T13:51:52.359Z",
+        "image": "bafa33ea-a53c-4b42-aae6-55a5b21f31ab",
+        "polygon": "Polygon((100,100), (200,100), (200,200), (100,200), (100,100))"
     }
 },
 {
@@ -2404,7 +2404,7 @@
     "model": "users.user",
     "pk": 1,
     "fields": {
-        "password": "pbkdf2_sha256$150000$UZV1KJC3tyBl$Gm72iZ6CQubtSn3A/kkadiJtOeNFNyTxvyoMSEYpt38=",
+        "password": "pbkdf2_sha256$150000$scEUthXzgpgB$lO4YIa9OfwA4+KosQYJHzSsTw1+f7jj3Z96LF7H/zqI=",
         "last_login": null,
         "email": "root@root.fr",
         "is_active": true,
@@ -2417,7 +2417,7 @@
     "model": "users.user",
     "pk": 2,
     "fields": {
-        "password": "pbkdf2_sha256$150000$ysUICBgyChgG$LYExCXOxn6ac73kZ/QbGgSD8d8U0oFF2983eyyeOFxY=",
+        "password": "pbkdf2_sha256$150000$N1LQxipdLh2v$1oR8ze1lNfJuKcS5XhLgeb5xGqFgdIvdD/54qVd8fgM=",
         "last_login": null,
         "email": "user@user.fr",
         "is_active": true,
@@ -2426,24 +2426,9 @@
         "groups": []
     }
 },
-{
-    "model": "users.user",
-    "pk": 3,
-    "fields": {
-        "password": "!Di9xZ9oTAZUT8hnB7e7N4vyj7alIC6dd7PMkAf0l",
-        "last_login": null,
-        "email": "demo@demo.fr",
-        "is_active": true,
-        "is_admin": false,
-        "verified_email": false,
-        "groups": [
-            1
-        ]
-    }
-},
 {
     "model": "users.oauthcredentials",
-    "pk": "63b9b740-aa84-4067-96bc-6d335ae02f0f",
+    "pk": "864eaa71-394c-4a11-9c22-e43ac32a6fa1",
     "fields": {
         "user": 2,
         "provider_name": "gitlab",
@@ -2460,7 +2445,7 @@
     "pk": 1,
     "fields": {
         "user": 2,
-        "corpus": "5cc1ffca-df94-4f98-ab4c-803eb8d3c73f",
+        "corpus": "8b2a738e-58da-4ea9-ae07-308d4600b313",
         "can_write": true,
         "can_admin": true
     }
diff --git a/arkindex/documents/management/commands/build_fixtures.py b/arkindex/documents/management/commands/build_fixtures.py
index a0dd55756f3471a1b3df2056da51e2c3fa07594a..2913287df50ac65030a48eb2ac6399003a8c1a3c 100644
--- a/arkindex/documents/management/commands/build_fixtures.py
+++ b/arkindex/documents/management/commands/build_fixtures.py
@@ -42,12 +42,11 @@ class Command(BaseCommand):
         z5 = makezone(img5, 0, 1000)
         z6 = makezone(img6, 0, 1000)
 
-        # Create internal and demo user groups
-        # They may have already been created by users.0002_default_groups
-        Group.objects.get_or_create(id=1, name='Demo')
+        # Create internal user group
+        # It may have already been created by users.0002_default_groups
         Group.objects.get_or_create(id=2, name='Internal')
 
-        # Create an admin, a user and a demo user
+        # Create an admin and a normal user
         superuser = User.objects.create_superuser('root@root.fr', 'Pa$$w0rd')
         superuser.verified_email = True
         superuser.save()
@@ -56,8 +55,6 @@ class Command(BaseCommand):
         user.verified_email = True
         user.save()
 
-        User.objects.create_demo_user('demo@demo.fr')
-
         # Create 1 data source for transcriptions
         source = DataSource.objects.create(
             type=MLToolType.Recognizer,
diff --git a/arkindex/documents/tests/test_elements_api.py b/arkindex/documents/tests/test_elements_api.py
index f82900b1fd9d107196d486d6cf9890dbe4b4ae94..e21a5176daf2fb9bae8ec437d7e2313f353cc77a 100644
--- a/arkindex/documents/tests/test_elements_api.py
+++ b/arkindex/documents/tests/test_elements_api.py
@@ -91,7 +91,7 @@ class TestElementsAPI(FixtureAPITestCase):
         """
         Check patching an element with an unverified email is not possible
         """
-        user = User.objects.get_by_natural_key('demo@demo.fr')
+        user = User.objects.create_user('nope@nope.fr')
         self.assertFalse(user.verified_email)
         self.client.force_login(user)
 
diff --git a/arkindex/project/api_v1.py b/arkindex/project/api_v1.py
index d7ef1fcbcebf1682778d7c4f18abd3abbb83d42c..c603abe59d6cb77f3dae21072ce495f32830d71a 100644
--- a/arkindex/project/api_v1.py
+++ b/arkindex/project/api_v1.py
@@ -18,7 +18,7 @@ from arkindex.documents.api.entities import (
 )
 from arkindex.documents.api.iiif import FolderManifest, ElementAnnotationList, TranscriptionSearchAnnotationList
 from arkindex.dataimport.api import (
-    DataImportsList, DataImportDetails, DataImportRetry, DataImportDemo,
+    DataImportsList, DataImportDetails, DataImportRetry,
     DataFileList, DataFileRetrieve, DataFileUpload, DataImportFromFiles,
     RepositoryList, RepositoryRetrieve, RepositoryStartImport, DataFileCreate,
     GitRepositoryImportHook, AvailableRepositoriesList, ElementHistory, MLToolList,
@@ -115,7 +115,6 @@ api = [
     path('imports/mltools/', MLToolList.as_view(), name='ml-tool-list'),
     path('imports/<uuid:pk>/', DataImportDetails.as_view(), name='import-details'),
     path('imports/<uuid:pk>/retry/', DataImportRetry.as_view(), name='import-retry'),
-    path('imports/demo/<uuid:pk>/', DataImportDemo.as_view(), name='import-demo'),
     path('imports/files/<uuid:pk>/', DataFileList.as_view(), name='file-list'),
     path('imports/files/create/', DataFileCreate.as_view(), name='file-create'),
     path('imports/file/<uuid:pk>/', DataFileRetrieve.as_view(), name='file-retrieve'),
diff --git a/arkindex/project/checks.py b/arkindex/project/checks.py
index 0060e1de760fa436e1ed6f843fbfb3c07490b975..ab5eda2fb9cab8c5dc7a116416a7aa6a34ab6376 100644
--- a/arkindex/project/checks.py
+++ b/arkindex/project/checks.py
@@ -1,7 +1,6 @@
 from django.core.checks import register, Warning, Error
 from ponos.recipe import parse_recipe
 import os.path
-import json
 import subprocess
 import yaml
 
@@ -37,30 +36,18 @@ def api_urls_check(*args, **kwargs):
 
 @register()
 @only_runserver
-def ml_default_tools_check(*args, **kwargs):
+def ml_tools_check(*args, **kwargs):
     """
-    Check that the default ML tools defined in settings actually exist
+    Check that the ML classifiers defined in settings actually exist
     """
     from django.conf import settings
-    from arkindex.dataimport.serializers.ml_tool import MLToolTaskSerializer
-    errors = []
-
     if not os.path.isdir(settings.ML_CLASSIFIERS_DIR):
-        errors.append(Error(
+        return [Error(
             'ML tools directory does not exist',
             hint='settings.ML_CLASSIFIERS_DIR = "{}"'.format(settings.ML_CLASSIFIERS_DIR),
             id='arkindex.E008',
-        ))
-
-    serializer = MLToolTaskSerializer(data=settings.DEMO_ML_TOOLS, many=True)
-    if not serializer.is_valid():
-        errors.append(Error(
-            # The easiest way to display Django REST framework serializer errors
-            'Could not parse demo ML tools: {}'.format(json.dumps(serializer.errors)),
-            hint='settings.DEMO_ML_TOOLS = {!r}'.format(settings.DEMO_ML_TOOLS),
-            id='arkindex.E002',
-        ))
-    return errors
+        )]
+    return []
 
 
 @register()
@@ -175,30 +162,6 @@ def internal_group_check(*args, **kwargs):
     return []
 
 
-@register()
-@only_runserver
-def demo_group_check(*args, **kwargs):
-    from django.conf import settings
-    from django.contrib.auth.models import Group
-    try:
-        group_id = settings.DEMO_GROUP_ID
-    except AttributeError:
-        return [Warning(
-            'Demo user group ID is not set; demo registration will fail.',
-            hint='settings.DEMO_GROUP_ID',
-            id='arkindex.W003',
-        )]
-    try:
-        Group.objects.get(id=group_id)
-    except Group.DoesNotExist:
-        return [Warning(
-            'Demo user group does not exist; demo registration will fail.',
-            hint='settings.DEMO_GROUP_ID = "{}"'.format(group_id),
-            id='arkindex.W004',
-        )]
-    return []
-
-
 @register()
 @only_runserver
 def gitlab_oauth_check(*args, **kwargs):
diff --git a/arkindex/project/permissions.py b/arkindex/project/permissions.py
index 27b042a83c308c8a77e80ba45a4ec514d59771bc..cf7bee79870c1f365778da97965a4a3cb0dd557e 100644
--- a/arkindex/project/permissions.py
+++ b/arkindex/project/permissions.py
@@ -12,14 +12,14 @@ class InternalGroupPermissionMixin(object):
         return super().has_permission(request, view)
 
 
-class DemoGroupPermissionMixin(object):
+class VerifiedEmailPermissionMixin(object):
 
     def has_permission(self, request, view):
-        if request.user.is_authenticated and not request.user.is_admin:
-            # If the user has registered from the demo, or has an unverified email,
-            # only allow HEAD, GET and OPTIONS.
-            if not request.user.verified_email or request.user.is_demo:
-                return super().has_permission(request, view) and request.method in permissions.SAFE_METHODS
+        if request.user.is_authenticated \
+                and not request.user.is_admin \
+                and not request.user.verified_email:
+            # If the user has an unverified email, only allow HEAD, GET and OPTIONS.
+            return super().has_permission(request, view) and request.method in permissions.SAFE_METHODS
 
         return super().has_permission(request, view)
 
@@ -40,9 +40,9 @@ class IsAdminUser(InternalGroupPermissionMixin, permissions.IsAdminUser):
     pass
 
 
-class IsVerified(DemoGroupPermissionMixin, IsAuthenticated):
+class IsVerified(VerifiedEmailPermissionMixin, IsAuthenticated):
     pass
 
 
-class IsVerifiedOrReadOnly(DemoGroupPermissionMixin, IsAuthenticatedOrReadOnly):
+class IsVerifiedOrReadOnly(VerifiedEmailPermissionMixin, IsAuthenticatedOrReadOnly):
     pass
diff --git a/arkindex/project/settings.py b/arkindex/project/settings.py
index bbd0eee852815a94914ac6ee1d6096d69f144fe8..324817c9c7b7d7f22a9b0f65408ccbb0ca8782f6 100644
--- a/arkindex/project/settings.py
+++ b/arkindex/project/settings.py
@@ -202,14 +202,7 @@ USE_TZ = True
 # https://docs.djangoproject.com/en/1.11/howto/static-files/
 STATIC_URL = '/static/'
 STATIC_ROOT = os.environ.get('STATIC_ROOT')
-STATICFILES_DIRS = [
-]
-
-DEMO_FILES_LIMIT = 50 * 1024 ** 2  # 50 MiB
-DEMO_ML_TOOLS = [
-    {'type': 'classifier', 'slug': 'tobacco'},
-    {'type': 'recognizer', 'slug': 'tesseract'},
-]
+STATICFILES_DIRS = []
 
 
 # API
@@ -389,7 +382,6 @@ ARKINDEX_APP_IMAGE = os.environ.get('ARKINDEX_APP_IMAGE', 'arkindex-app')
 ARKINDEX_TASKS_IMAGE = os.environ.get('ARKINDEX_TASKS_IMAGE', 'arkindex-tasks')
 
 # User groups with special permissions
-DEMO_GROUP_ID = 1
 INTERNAL_GROUP_ID = 2
 
 # Optional unit tests runner with code coverage
diff --git a/arkindex/project/tests/test_checks.py b/arkindex/project/tests/test_checks.py
index 1294ce51b6762ae2c8c6e111c173da5f4bf46686..fb1f122588c81f65421b2a3769017998be8b4366 100644
--- a/arkindex/project/tests/test_checks.py
+++ b/arkindex/project/tests/test_checks.py
@@ -35,43 +35,27 @@ class ChecksTestCase(TestCase):
             ]
         )
 
-    @patch('arkindex.dataimport.serializers.ml_tool.MLTool.get')
     @patch('arkindex.project.checks.os.path.isdir')
-    def test_ml_default_tools_check(self, isdir_mock, ml_get_mock):
+    def test_ml_tools_check(self, isdir_mock):
         """
-        Test the default ML tools existence checks
+        Test the ML tools existence checks
         """
-        from arkindex.project.checks import ml_default_tools_check
+        from arkindex.project.checks import ml_tools_check
 
         isdir_mock.return_value = True
-        ml_get_mock.return_value.__hash__.side_effect = [1, 2, 3, 4]
-        self.assertListEqual(ml_default_tools_check(), [])
+        self.assertListEqual(ml_tools_check(), [])
 
         isdir_mock.return_value = False
-        ml_get_mock.side_effect = ValueError('Tool does not exist')
-
-        with self.settings(
-                ML_CLASSIFIERS_DIR='oops',
-                DEMO_ML_TOOLS=[
-                    {'type': 'classifier', 'slug': 'fail1'},
-                    {'type': 'recognizer', 'slug': 'fail2'},
-                ]):
+
+        with self.settings(ML_CLASSIFIERS_DIR='oops'):
             self.assertListEqual(
-                ml_default_tools_check(),
+                ml_tools_check(),
                 [
                     Error(
                         'ML tools directory does not exist',
                         hint='settings.ML_CLASSIFIERS_DIR = "oops"',
                         id='arkindex.E008',
                     ),
-                    Error(
-                        'Could not parse demo ML tools: '
-                        '[{"non_field_errors": ["Tool does not exist"]},'
-                        ' {"non_field_errors": ["Tool does not exist"]}]',
-                        hint="settings.DEMO_ML_TOOLS = "
-                             "[{'type': 'classifier', 'slug': 'fail1'}, {'type': 'recognizer', 'slug': 'fail2'}]",
-                        id='arkindex.E002',
-                    ),
                 ],
             )
 
@@ -208,28 +192,6 @@ class ChecksTestCase(TestCase):
         Group.objects.create(id=1234)
         self.assertListEqual(internal_group_check(), [])
 
-    @override_settings()
-    def test_demo_group_check(self):
-        from arkindex.project.checks import demo_group_check
-        from django.contrib.auth.models import Group
-
-        del settings.DEMO_GROUP_ID
-        self.assertListEqual(demo_group_check(), [Warning(
-            'Demo user group ID is not set; demo registration will fail.',
-            hint='settings.DEMO_GROUP_ID',
-            id='arkindex.W003',
-        )])
-
-        settings.DEMO_GROUP_ID = 1234
-        self.assertListEqual(demo_group_check(), [Warning(
-            'Demo user group does not exist; demo registration will fail.',
-            hint='settings.DEMO_GROUP_ID = "1234"',
-            id='arkindex.W004',
-        )])
-
-        Group.objects.create(id=1234)
-        self.assertListEqual(demo_group_check(), [])
-
     @override_settings()
     def test_gitlab_oauth_check(self):
         from arkindex.project.checks import gitlab_oauth_check
diff --git a/arkindex/users/api.py b/arkindex/users/api.py
index 45562479175393295773496f467a9550218194dd..d7fac16ef0d51cfe08d63727c7d3beb74d142f1b 100644
--- a/arkindex/users/api.py
+++ b/arkindex/users/api.py
@@ -14,12 +14,11 @@ from rest_framework.generics import \
 from rest_framework.response import Response
 from rest_framework.exceptions import AuthenticationFailed, ValidationError
 from arkindex.project.permissions import IsAuthenticated, IsVerified
-from arkindex.documents.models import Corpus, Element, ElementType
 from arkindex.users.providers import oauth_providers, get_provider
 from arkindex.users.models import User, OAuthStatus
 from arkindex.users.serializers import (
     OAuthCredentialsSerializer, OAuthProviderClassSerializer, OAuthRetrySerializer,
-    UserSerializer, NewDemoUserSerializer, EmailLoginSerializer,
+    UserSerializer, NewUserSerializer, EmailLoginSerializer,
     PasswordResetSerializer, PasswordResetConfirmSerializer,
 )
 import urllib.parse
@@ -67,37 +66,23 @@ class UserRetrieve(RetrieveUpdateDestroyAPIView):
     def get_object(self):
         return self.request.user
 
-    def check_permissions(self, request):
-        # Will raise REST framework exceptions for denied requests
-        super().check_permissions(request)
-
-        # Deny changing the password on demo users without verified emails
-        if request.method.lower() in ('put', 'patch') and \
-                request.user.is_demo and \
-                not request.user.is_verified:
-            self.permission_denied(request)
-
     def perform_destroy(self, instance):
         logout(self.request)
 
 
 class UserCreate(CreateAPIView):
-    serializer_class = NewDemoUserSerializer
+    serializer_class = NewUserSerializer
+    openapi_overrides = {
+        'operationId': 'Register',
+        'description': 'Register as a new user.',
+        'security': [],
+        'tags': ['users'],
+    }
 
     def perform_create(self, serializer):
         user = serializer.save()
         login(self.request, user)
 
-        corpus = Corpus.objects.create(name=user.email)
-        corpus.create_default_himanis_types()
-        corpus.corpus_right.create(user=user, can_write=True, can_admin=True)
-        Element.objects.create(
-            corpus=corpus,
-            new_type=corpus.himanis_volume,
-            type=ElementType.Volume,
-            name='Demo',
-        )
-
         activation_url = '{}?{}'.format(
             self.request.build_absolute_uri(reverse('api:user-token')),
             urllib.parse.urlencode({
@@ -210,14 +195,6 @@ class OAuthSignIn(APIView):
     """
     permission_classes = (IsVerified, )
 
-    def check_permissions(self, request):
-        # Will raise REST framework exceptions for denied requests
-        super().check_permissions(request)
-
-        # Deny GET on Demo users
-        if request.user.is_demo:
-            self.permission_denied(request)
-
     def get(self, *args, **kwargs):
         if 'provider' not in kwargs:
             raise ValidationError('Missing provider')
@@ -250,14 +227,6 @@ class OAuthRetry(RetrieveAPIView):
     permission_classes = (IsVerified, )
     serializer_class = OAuthRetrySerializer
 
-    def check_permissions(self, request):
-        # Will raise REST framework exceptions for denied requests
-        super().check_permissions(request)
-
-        # Deny GET on Demo users
-        if request.user.is_demo:
-            self.permission_denied(request)
-
     def get_queryset(self):
         return self.request.user.credentials
 
@@ -284,11 +253,9 @@ class OAuthCallback(UserPassesTestMixin, RedirectView):
 
     def test_func(self):
         """
-        Perform Django REST framework permission checks, but without REST framework,
-        and restrict GET on Demo users
+        Perform Django REST framework permission checks, but without REST framework.
         """
-        return all(perm().has_permission(self.request, self) for perm in self.permission_classes) \
-            and not self.request.user.is_demo
+        return all(perm().has_permission(self.request, self) for perm in self.permission_classes)
 
     def get(self, request, *args, **kwargs):
         assert 'provider' in kwargs
diff --git a/arkindex/users/managers.py b/arkindex/users/managers.py
index 34f2ea9122143bf2db0d06e456530c678782ca07..8da92660012d550d3878fe8b57016f88956dade5 100644
--- a/arkindex/users/managers.py
+++ b/arkindex/users/managers.py
@@ -30,14 +30,6 @@ class UserManager(BaseUserManager):
         user.save(using=self._db)
         return user
 
-    def create_demo_user(self, email):
-        user = self.create_user(email)
-        user.groups.add(Group.objects.get(id=settings.DEMO_GROUP_ID))
-        if user.auth_token:
-            # Do not set a token for demo users
-            user.auth_token.delete()
-        return user
-
     def create_internal_user(self, email):
         user = self.create_user(email)
         user.groups.add(Group.objects.get(id=settings.INTERNAL_GROUP_ID))
diff --git a/arkindex/users/models.py b/arkindex/users/models.py
index 98bb59d47f439e9d29d54e7531daf21c87d4563f..389f71351b5b67aa918c4263fb246592adb6cb97 100644
--- a/arkindex/users/models.py
+++ b/arkindex/users/models.py
@@ -53,10 +53,6 @@ class User(AbstractBaseUser):
     def is_internal(self):
         return self.groups.filter(id=settings.INTERNAL_GROUP_ID).exists()
 
-    @cached_property
-    def is_demo(self):
-        return self.groups.filter(id=settings.DEMO_GROUP_ID).exists()
-
 
 class OAuthStatus(Enum):
     Created = 'created'
diff --git a/arkindex/users/serializers.py b/arkindex/users/serializers.py
index 338cf59836c47020de884fcaa45a8dbf8d2b0e05..bff0b7a1d0dca9e3ca5ca0d2af427b718389143a 100644
--- a/arkindex/users/serializers.py
+++ b/arkindex/users/serializers.py
@@ -71,7 +71,7 @@ class UserSerializer(serializers.ModelSerializer):
         return super().update(instance, validated_data)
 
 
-class NewDemoUserSerializer(serializers.ModelSerializer):
+class NewUserSerializer(serializers.ModelSerializer):
 
     class Meta:
         model = User
@@ -80,7 +80,7 @@ class NewDemoUserSerializer(serializers.ModelSerializer):
         )
 
     def create(self, validated_data):
-        return User.objects.create_demo_user(validated_data['email'])
+        return User.objects.create_user(validated_data['email'])
 
 
 class EmailLoginSerializer(serializers.Serializer):
diff --git a/arkindex/users/tests/test_providers.py b/arkindex/users/tests/test_providers.py
index 32608b533452d02c319757497d123469798eba03..f922a3cee9b31dee8f8a075fec8c9c312ecac680 100644
--- a/arkindex/users/tests/test_providers.py
+++ b/arkindex/users/tests/test_providers.py
@@ -1,8 +1,7 @@
 from django.urls import reverse
-from rest_framework import status
 from arkindex.project.tests import FixtureTestCase
 from arkindex.users import providers
-from arkindex.users.models import OAuthStatus, User
+from arkindex.users.models import OAuthStatus
 from arkindex.users.providers import get_provider
 from unittest.mock import MagicMock
 
@@ -13,7 +12,6 @@ class TestProviders(FixtureTestCase):
     def setUpTestData(cls):
         super().setUpTestData()
         cls.creds = cls.user.credentials.get()
-        cls.demo_user = User.objects.get(email='demo@demo.fr')
 
     @classmethod
     def setUpClass(cls):
@@ -53,15 +51,3 @@ class TestProviders(FixtureTestCase):
         )
         self.assertRedirects(response, reverse('credentials'), fetch_redirect_response=False)
         self.assertEqual(self.creds.status, OAuthStatus.Error)
-
-    def test_oauth_callback_not_demo(self):
-        self.provider_mock().handle_callback.side_effect = None
-        self.client.force_login(self.demo_user)
-        self.creds.user = self.demo_user
-        self.creds.status = OAuthStatus.Created
-        self.creds.save()
-        response = self.client.get(
-            reverse('api:oauth-callback', kwargs={'provider': 'provider-slug'}),
-        )
-        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
-        self.assertEqual(self.creds.status, OAuthStatus.Created)
diff --git a/openapi/patch.yml b/openapi/patch.yml
index 15a7ce7be76f0cf78199e69f68b459ec084bc45c..72cdc96c5b4eaa8c0c15b1db48d96614766972d0 100644
--- a/openapi/patch.yml
+++ b/openapi/patch.yml
@@ -38,6 +38,7 @@ tags:
   - name: ml
     description: Machine Learning tools and results
   - name: entities
+  - name: users
 paths:
   /api/v1/classification/bulk/:
     post:
@@ -345,12 +346,6 @@ paths:
       description: List all data imports
       tags:
         - imports
-  /api/v1/imports/demo/{id}/:
-    post:
-      description: Run a data import with reduced access for demo users
-      security: []
-      tags:
-        - imports
   /api/v1/imports/file/{id}/:
     get:
       description: Get an uploaded file's metadata
@@ -643,13 +638,6 @@ paths:
       security: []
       tags:
         - users
-  /api/v1/user/new/:
-    post:
-      operationId: Register
-      description: Register as a demo user
-      security: []
-      tags:
-        - users
   /api/v1/user/password-reset/:
     post:
       operationId: ResetPassword