diff --git a/src/videoag_common/test/object_data.py b/src/videoag_common/test/object_data.py
index bb10dfed27ee02bf1210ce8dda7d596872056c99..0f22d79f84be3b3b4e8e9f1b8e48873e4d935462 100644
--- a/src/videoag_common/test/object_data.py
+++ b/src/videoag_common/test/object_data.py
@@ -1,274 +1,377 @@
+# -------------------- User --------------------
+
+TEST_DATA_USER_43 = \
+    {
+        "id": 43,
+        "handle": "videoag",
+        "name": "Video"
+    }
+
 # -------------------- Chapters --------------------
 
 TEST_DATA_CHAPTER_1 = \
     {
+        "id": 1,
         "start_time": 60,
-        "name": "test1"
+        "name": "test1",
     }
 TEST_DATA_CHAPTER_1_MOD = TEST_DATA_CHAPTER_1 | \
     {
-        "id": 1,
-        "is_visible": True
+        "visible": True,
     }
 
 TEST_DATA_CHAPTER_2 = \
     {
+        "id": 2,
         "start_time": 7200,
-        "name": "test2"
+        "name": "test2",
     }
 TEST_DATA_CHAPTER_2_MOD = TEST_DATA_CHAPTER_2 | \
     {
-        "id": 2,
-        "is_visible": True
+        "visible": True,
     }
 
 _TEST_DATA_CHAPTER_3 = \
     {
+        "id": 3,
         "start_time": 360,
-        "name": "Hidden"
+        "name": "Hidden",
     }
 TEST_DATA_CHAPTER_3_MOD = _TEST_DATA_CHAPTER_3 | \
     {
-        "id": 3,
-        "is_visible": False
+        "visible": False,
     }
 
 TEST_DATA_CHAPTER_5 = \
     {
+        "id": 5,
         "start_time": 429,
-        "name": "Something"
+        "name": "Something",
     }
 TEST_DATA_CHAPTER_5_MOD = TEST_DATA_CHAPTER_5 | \
     {
-        "id": 5,
-        "is_visible": True
+        "visible": True,
     }
 
-# -------------------- Media sources --------------------
+# -------------------- Target Media --------------------
 
-TEST_DATA_MEDIA_SOURCE_185 = \
+TEST_DATA_TARGET_MEDIUM_5 = \
+    {
+        "id": 5,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/5",
+        "vertical_resolution": 720,
+        "horizontal_resolution": 1280,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5243,
+    }
+TEST_DATA_TARGET_MEDIUM_5_EXT = TEST_DATA_TARGET_MEDIUM_5 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,  # TODO correct?,
+    }
+TEST_DATA_TARGET_MEDIUM_6 = \
+    {
+        "id": 6,
+        "type": "thumbnail",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/6",
+        "vertical_resolution": 640,
+        "horizontal_resolution": 640,
+    }
+TEST_DATA_TARGET_MEDIUM_6_EXT = TEST_DATA_TARGET_MEDIUM_5 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "thumbnail",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+
+
+TEST_DATA_TARGET_MEDIUM_7 = \
+    {
+        "id": 7,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/7",
+        "vertical_resolution": 720,
+        "horizontal_resolution": 1280,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5420,
+    }
+TEST_DATA_TARGET_MEDIUM_7_EXT = TEST_DATA_TARGET_MEDIUM_7 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+TEST_DATA_TARGET_MEDIUM_8 = \
+    {
+        "id": 8,
+        "type": "thumbnail",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/8",
+        "vertical_resolution": 640,
+        "horizontal_resolution": 640,
+    }
+TEST_DATA_TARGET_MEDIUM_8_EXT = TEST_DATA_TARGET_MEDIUM_8 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "thumbnail",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+
+
+TEST_DATA_TARGET_MEDIUM_15 = \
+    {
+        "id": 15,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/15",
+        "vertical_resolution": 1080,
+        "horizontal_resolution": 1920,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5431,
+    }
+TEST_DATA_TARGET_MEDIUM_15_EXT = TEST_DATA_TARGET_MEDIUM_15 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video_1080",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+TEST_DATA_TARGET_MEDIUM_16 = \
+    {
+        "id": 16,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/16",
+        "vertical_resolution": 720,
+        "horizontal_resolution": 1280,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5431,
+    }
+TEST_DATA_TARGET_MEDIUM_16_EXT = TEST_DATA_TARGET_MEDIUM_16 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video_720",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+TEST_DATA_TARGET_MEDIUM_25 = \
     {
-        "quality": {
-            "name": "720p",
-            "resolution": "1280x720",
-            "aspect_ration": "16:9",
-            "priority": 10
-        },
-        "size": 418148064,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090416.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090416.mp4"
+        "id": 25,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/25",
+        "vertical_resolution": 480,
+        "horizontal_resolution": 854,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5431,
     }
-TEST_DATA_MEDIA_SOURCE_185_MOD = TEST_DATA_MEDIA_SOURCE_185 | \
+TEST_DATA_TARGET_MEDIUM_25_EXT = TEST_DATA_TARGET_MEDIUM_25 | \
     {
-        "id": 185,
-        "is_visible": True
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video_480",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
     }
+TEST_DATA_TARGET_MEDIUM_17 = \
+    {
+        "id": 17,
+        "type": "thumbnail",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/17",
+        "vertical_resolution": 640,
+        "horizontal_resolution": 640,
+    }
+TEST_DATA_TARGET_MEDIUM_17_EXT = TEST_DATA_TARGET_MEDIUM_17 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "thumbnail",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+
 
-TEST_DATA_MEDIA_SOURCE_186 = \
+TEST_DATA_TARGET_MEDIUM_19 = \
     {
-        "quality": {
-            "name": "720p",
-            "resolution": "1280x720",
-            "aspect_ration": "16:9",
-            "priority": 10
-        },
-        "size": 246922038,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090421.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090421.mp4"
+        "id": 19,
+        "type": "plain_video",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/19",
+        "vertical_resolution": 720,
+        "horizontal_resolution": 1280,
+        "video_frame_rate_numerator": 25,
+        "video_frame_rate_denominator": 1,
+        "audio_sample_rate": 44000,
+        "audio_channel_count": 2,
+        "duration_sec": 5001,
     }
-TEST_DATA_MEDIA_SOURCE_186_MOD = TEST_DATA_MEDIA_SOURCE_186 | \
+TEST_DATA_TARGET_MEDIUM_19_EXT = TEST_DATA_TARGET_MEDIUM_19 | \
     {
-        "id": 186,
-        "is_visible": True
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "video",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
+    }
+TEST_DATA_TARGET_MEDIUM_20 = \
+    {
+        "id": 20,
+        "type": "thumbnail",
+        "url": "https://api.video.fsmpi.rwth-aachen.de/api/v0/resources/target_medium/20",
+        "vertical_resolution": 640,
+        "horizontal_resolution": 640,
+    }
+TEST_DATA_TARGET_MEDIUM_20_EXT = TEST_DATA_TARGET_MEDIUM_20 | \
+    {
+        "process_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "process_target_id": "thumbnail",
+        "input_data_sha256": "0000000000000000000000000000000000000000000000000000000000000000",
+        "is_produced": True,
+        "to_be_replaced": False,
+        "producer_job": None,
     }
 
-TEST_DATA_MEDIA_SOURCE_204 = \
+# -------------------- Publish Media --------------------
+
+TEST_DATA_PUBLISH_MEDIUM_186 = \
     {
-        "quality": {
-            "name": "1080p",
-            "resolution": "1920x1080",
-            "aspect_ration": "16:9",
-            "priority": 7
-        },
-        "size": 228716898,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090421.f4v",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/09ss-fosap/09ss-fosap-090421.f4v"
+        "id": 186,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_15,
     }
-TEST_DATA_MEDIA_SOURCE_204_MOD = TEST_DATA_MEDIA_SOURCE_204 | \
+TEST_DATA_PUBLISH_MEDIUM_186_MOD = TEST_DATA_PUBLISH_MEDIUM_186 | \
     {
-        "id": 204,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1366 = \
+TEST_DATA_PUBLISH_MEDIUM_204 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 309620019,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071019.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071019.mp4"
+        "id": 204,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_16,
     }
-TEST_DATA_MEDIA_SOURCE_1366_MOD = TEST_DATA_MEDIA_SOURCE_1366 | \
+TEST_DATA_PUBLISH_MEDIUM_204_MOD = TEST_DATA_PUBLISH_MEDIUM_204 | \
     {
-        "id": 1366,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1367 = \
+TEST_DATA_PUBLISH_MEDIUM_1368 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 442344305,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071023.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071023.mp4"
+        "id": 1368,
+        "title": "Super video!",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_5,
     }
-TEST_DATA_MEDIA_SOURCE_1367_MOD = TEST_DATA_MEDIA_SOURCE_1367 | \
+TEST_DATA_PUBLISH_MEDIUM_1368_MOD = TEST_DATA_PUBLISH_MEDIUM_1368 | \
     {
-        "id": 1367,
-        "is_visible": True
+        "visible": False,
     }
 
-_TEST_DATA_MEDIA_SOURCE_1368 = \
+TEST_DATA_PUBLISH_MEDIUM_1495 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 496109745,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071026.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/07ws-buk/07ws-buk-071026.mp4",
+        "id": 1495,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_7,
     }
-TEST_DATA_MEDIA_SOURCE_1368_MOD = _TEST_DATA_MEDIA_SOURCE_1368 | \
+TEST_DATA_PUBLISH_MEDIUM_1495_MOD = TEST_DATA_PUBLISH_MEDIUM_1495 | \
     {
-        "id": 1368,
-        "is_visible": False
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1486 = \
+TEST_DATA_PUBLISH_MEDIUM_1497 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 398065123,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-071218.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-071218.mp4"
+        "id": 1497,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_19,
     }
-TEST_DATA_MEDIA_SOURCE_1486_MOD = TEST_DATA_MEDIA_SOURCE_1486 | \
+TEST_DATA_PUBLISH_MEDIUM_1497_MOD = TEST_DATA_PUBLISH_MEDIUM_1497 | \
     {
-        "id": 1486,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1487 = \
+TEST_DATA_PUBLISH_MEDIUM_100003 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 389368926,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-080117.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-080117.mp4"
+        "id": 100003,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_6,
     }
-TEST_DATA_MEDIA_SOURCE_1487_MOD = TEST_DATA_MEDIA_SOURCE_1487 | \
+TEST_DATA_PUBLISH_MEDIUM_100003_MOD = TEST_DATA_PUBLISH_MEDIUM_100003 | \
     {
-        "id": 1487,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1495 = \
+TEST_DATA_PUBLISH_MEDIUM_100025 = \
     {
-        "quality": {
-            "name": "Format unbekannt",
-            "resolution": "",
-            "aspect_ration": "",
-            "priority": 0
-        },
-        "size": 549478861,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-071211.mp4",
-        "download_url": "https://video.fsmpi.rwth-aachen.de/files/pub/07ws-diskrete/07ws-diskrete-071211.mp4"
+        "id": 100025,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_8,
     }
-TEST_DATA_MEDIA_SOURCE_1495_MOD = TEST_DATA_MEDIA_SOURCE_1495 | \
+TEST_DATA_PUBLISH_MEDIUM_100025_MOD = TEST_DATA_PUBLISH_MEDIUM_100025 | \
     {
-        "id": 1495,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1497 = \
+TEST_DATA_PUBLISH_MEDIUM_100186 = \
     {
-        "quality": {
-            "name": "720p",
-            "resolution": "1280x720",
-            "aspect_ration": "16:9",
-            "priority": 10
-        },
-        "size": 687254584,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/11ws-infin/11ws-infin-111010.mp4"
+        "id": 100186,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_17,
     }
-TEST_DATA_MEDIA_SOURCE_1497_MOD = TEST_DATA_MEDIA_SOURCE_1497 | \
+TEST_DATA_PUBLISH_MEDIUM_100186_MOD = TEST_DATA_PUBLISH_MEDIUM_100186 | \
     {
-        "id": 1497,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1539 = \
+TEST_DATA_PUBLISH_MEDIUM_101186 = \
     {
-        "quality": {
-            "name": "720p",
-            "resolution": "1280x720",
-            "aspect_ration": "16:9",
-            "priority": 10
-        },
-        "size": 1080865275,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/11ws-infin/11ws-infin-111017.mp4"
+        "id": 101186,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_20,
     }
-TEST_DATA_MEDIA_SOURCE_1539_MOD = TEST_DATA_MEDIA_SOURCE_1539 | \
+TEST_DATA_PUBLISH_MEDIUM_101186_MOD = TEST_DATA_PUBLISH_MEDIUM_101186 | \
     {
-        "id": 1539,
-        "is_visible": True
+        "visible": True,
     }
 
-TEST_DATA_MEDIA_SOURCE_1540 = \
+TEST_DATA_PUBLISH_MEDIUM_101189 = \
     {
-        "quality": {
-            "name": "720p",
-            "resolution": "1280x720",
-            "aspect_ration": "16:9",
-            "priority": 10
-        },
-        "size": 1042222975,
-        "comment": "",
-        "player_url": "https://video.fsmpi.rwth-aachen.de/files/vpnonline/11ws-infin/11ws-infin-111024.mp4"
+        "id": 101189,
+        "title": "",
+        "target_medium": TEST_DATA_TARGET_MEDIUM_25,
     }
-TEST_DATA_MEDIA_SOURCE_1540_MOD = TEST_DATA_MEDIA_SOURCE_1540 | \
+TEST_DATA_PUBLISH_MEDIUM_101189_MOD = TEST_DATA_PUBLISH_MEDIUM_101189 | \
     {
-        "id": 1540,
-        "is_visible": True
+        "visible": True,
     }
 
 # -------------------- Lectures --------------------
@@ -283,27 +386,26 @@ TEST_DATA_LECTURE_1_NO_CHAP_MEDIA = \
         "time": "2007-10-19T12:00:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_1.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
         "authentication_methods": [
             "rwth",
             "fsmpi"
-        ]
+        ],
     }
 TEST_DATA_LECTURE_1_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_1_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_1 = TEST_DATA_LECTURE_1_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1366]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_1_MOD = TEST_DATA_LECTURE_1_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1366_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_2_NO_CHAP_MEDIA = \
@@ -316,27 +418,26 @@ TEST_DATA_LECTURE_2_NO_CHAP_MEDIA = \
         "time": "2007-10-23T08:30:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_2.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
         "authentication_methods": [
             "rwth",
             "fsmpi"
-        ]
+        ],
     }
 TEST_DATA_LECTURE_2_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_2_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_2 = TEST_DATA_LECTURE_2_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1367]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_2_MOD = TEST_DATA_LECTURE_2_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1367_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_3_NO_CHAP_MEDIA = \
@@ -349,24 +450,23 @@ TEST_DATA_LECTURE_3_NO_CHAP_MEDIA = \
         "time": "2007-10-26T12:00:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_3.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
-        "authentication_methods": ["public"]
+        "authentication_methods": ["public"],
     }
 TEST_DATA_LECTURE_3_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_3_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_3 = TEST_DATA_LECTURE_3_NO_CHAP_MEDIA | {
     "chapters": [TEST_DATA_CHAPTER_5],
-    "media_sources": []
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_100003]
 }
 TEST_DATA_LECTURE_3_MOD = TEST_DATA_LECTURE_3_NO_CHAP_MEDIA_MOD | {
     "chapters": [TEST_DATA_CHAPTER_5_MOD],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1368_MOD]
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_1368_MOD, TEST_DATA_PUBLISH_MEDIUM_100003_MOD]
 }
 
 TEST_DATA_LECTURE_25_NO_CHAP_MEDIA = \
@@ -379,24 +479,23 @@ TEST_DATA_LECTURE_25_NO_CHAP_MEDIA = \
         "time": "2007-12-11T13:30:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_25.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": False,
-        "authentication_methods": ["public"]
+        "authentication_methods": ["public"],
     }
 TEST_DATA_LECTURE_25_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_25_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": "2007-12-12T19:12:04",
     }
 TEST_DATA_LECTURE_25 = TEST_DATA_LECTURE_25_NO_CHAP_MEDIA | {
     "chapters": [TEST_DATA_CHAPTER_1, TEST_DATA_CHAPTER_2],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1495]
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_1495, TEST_DATA_PUBLISH_MEDIUM_100025]
 }
 TEST_DATA_LECTURE_25_MOD = TEST_DATA_LECTURE_25_NO_CHAP_MEDIA_MOD | {
     "chapters": [TEST_DATA_CHAPTER_1_MOD, TEST_DATA_CHAPTER_2_MOD],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1495_MOD]
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_1495_MOD, TEST_DATA_PUBLISH_MEDIUM_100025_MOD]
 }
 
 _TEST_DATA_LECTURE_26_NO_CHAP_MEDIA = \
@@ -409,20 +508,19 @@ _TEST_DATA_LECTURE_26_NO_CHAP_MEDIA = \
         "time": "2007-12-18T13:30:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_26.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": False,
-        "authentication_methods": []
+        "authentication_methods": [],
     }
 TEST_DATA_LECTURE_26_NO_CHAP_MEDIA_MOD = _TEST_DATA_LECTURE_26_NO_CHAP_MEDIA | \
     {
-        "is_visible": False,
+        "visible": False,
         "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_26_MOD = TEST_DATA_LECTURE_26_NO_CHAP_MEDIA_MOD | {
     "chapters": [TEST_DATA_CHAPTER_3_MOD],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1486_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_29_NO_CHAP_MEDIA = \
@@ -435,24 +533,23 @@ TEST_DATA_LECTURE_29_NO_CHAP_MEDIA = \
         "time": "2008-01-17T08:15:00",
         "duration": 0,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_29.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": False,
-        "authentication_methods": ["password"]
+        "authentication_methods": ["password"],
     }
 TEST_DATA_LECTURE_29_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_29_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_29 = TEST_DATA_LECTURE_29_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1487]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_29_MOD = TEST_DATA_LECTURE_29_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1487_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_185_NO_CHAP_MEDIA = \
@@ -465,26 +562,25 @@ TEST_DATA_LECTURE_185_NO_CHAP_MEDIA = \
         "time": "2009-04-16T10:00:00",
         "duration": 90,
         "description": "Sorry für den schlechten Ton",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_185.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
         "authentication_methods": [
             "public"
-        ]
+        ],
     }
 TEST_DATA_LECTURE_185_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_185_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
+        "visible": True,
         "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_185 = TEST_DATA_LECTURE_185_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_185]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_185_MOD = TEST_DATA_LECTURE_185_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_185_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_186_NO_CHAP_MEDIA = \
@@ -497,26 +593,35 @@ TEST_DATA_LECTURE_186_NO_CHAP_MEDIA = \
         "time": "2009-04-21T08:15:00",
         "duration": 45,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_186.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
         "authentication_methods": [
             "public"
-        ]
+        ],
     }
 TEST_DATA_LECTURE_186_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_186_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
+        "visible": True,
         "internal_comment": "",
+        "publish_time": "2009-05-18T03:13:20",
     }
 TEST_DATA_LECTURE_186 = TEST_DATA_LECTURE_186_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_186, TEST_DATA_MEDIA_SOURCE_204]
+    "publish_media": [
+        TEST_DATA_PUBLISH_MEDIUM_186,
+        TEST_DATA_PUBLISH_MEDIUM_204,
+        TEST_DATA_PUBLISH_MEDIUM_100186,
+        TEST_DATA_PUBLISH_MEDIUM_101189,
+    ]
 }
 TEST_DATA_LECTURE_186_MOD = TEST_DATA_LECTURE_186_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_186_MOD, TEST_DATA_MEDIA_SOURCE_204_MOD]
+    "publish_media": [
+        TEST_DATA_PUBLISH_MEDIUM_186_MOD,
+        TEST_DATA_PUBLISH_MEDIUM_204_MOD,
+        TEST_DATA_PUBLISH_MEDIUM_100186_MOD,
+        TEST_DATA_PUBLISH_MEDIUM_101189_MOD,
+    ]
 }
 
 TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA = \
@@ -529,24 +634,23 @@ TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA = \
         "time": "2011-10-10T18:30:00",
         "duration": 90,
         "description": "",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_1186.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
-        "authentication_methods": ["moodle"]
+        "authentication_methods": ["moodle"],
     }
 TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": "2011-10-17T14:33:45",
     }
 TEST_DATA_LECTURE_1186 = TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1497]
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_1497, TEST_DATA_PUBLISH_MEDIUM_101186]
 }
 TEST_DATA_LECTURE_1186_MOD = TEST_DATA_LECTURE_1186_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1497_MOD]
+    "publish_media": [TEST_DATA_PUBLISH_MEDIUM_1497_MOD, TEST_DATA_PUBLISH_MEDIUM_101186_MOD]
 }
 
 TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA = \
@@ -559,24 +663,23 @@ TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA = \
         "time": "2011-10-17T18:30:00",
         "duration": 90,
         "description": "noch kein Titel",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_1187.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
-        "authentication_methods": ["moodle"]
+        "authentication_methods": ["moodle"],
     }
 TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_1187 = TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1539]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_1187_MOD = TEST_DATA_LECTURE_1187_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1539_MOD]
+    "publish_media": []
 }
 
 TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA = \
@@ -589,24 +692,23 @@ TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA = \
         "time": "2050-10-24T18:30:00",
         "duration": 90,
         "description": "noch kein Titel",
-        "thumbnail_url": "https://video.fsmpi.rwth-aachen.de/files/thumbnail/l_1188.jpg",
         "no_recording": False,
         "livestream_planned": False,
-        "allow_embed": True,
-        "authentication_methods": ["moodle"]
+        "authentication_methods": ["moodle"],
     }
 TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA_MOD = TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA | \
     {
-        "is_visible": True,
-        "internal_comment": ""
+        "visible": True,
+        "internal_comment": "",
+        "publish_time": None,
     }
 TEST_DATA_LECTURE_1188 = TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1540]
+    "publish_media": []
 }
 TEST_DATA_LECTURE_1188_MOD = TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA_MOD | {
     "chapters": [],
-    "media_sources": [TEST_DATA_MEDIA_SOURCE_1540_MOD]
+    "publish_media": []
 }
 
 # -------------------- Courses --------------------
@@ -614,23 +716,26 @@ TEST_DATA_LECTURE_1188_MOD = TEST_DATA_LECTURE_1188_NO_CHAP_MEDIA_MOD | {
 TEST_DATA_COURSE_2_NO_LEC = \
     {
         "id": 2,
-        "id_string": "07ws-buk",
+        "handle": "07ws-buk",
         "full_name": "Berechenbarkeit und Komplexität",
         "short_name": "BuK",
         "organizer": "Prof. Vöcking",
         "topic": "Informatik",
         "description": "Seite zur Veranstaltung...",
         "show_chapters_on_course": False,
+        "allow_embed": True,
         "semester": "2007ws",
         "default_authentication_methods": [
             "rwth",
             "fsmpi"
-        ]
+        ],
+        "authentication_information": "",
     }
 TEST_DATA_COURSE_2_NO_LEC_MOD = TEST_DATA_COURSE_2_NO_LEC | \
     {
-        "is_listed": True,
-        "is_visible": True
+        "listed": True,
+        "visible": True,
+        "internal_comment": "",
     }
 TEST_DATA_COURSE_2 = TEST_DATA_COURSE_2_NO_LEC | {
     "lectures": [TEST_DATA_LECTURE_1, TEST_DATA_LECTURE_2, TEST_DATA_LECTURE_3]
@@ -642,20 +747,23 @@ TEST_DATA_COURSE_2_MOD = TEST_DATA_COURSE_2_NO_LEC_MOD | {
 TEST_DATA_COURSE_3_NO_LEC = \
     {
         "id": 3,
-        "id_string": "07ws-diskrete",
+        "handle": "07ws-diskrete",
         "full_name": "Diskrete Strukturen",
         "short_name": "Diskrete",
         "organizer": "Prof. Hiß",
         "topic": "Informatik",
         "description": "Von dieser Vorlesungsreihe fehlen die ersten zwei Monate. Wenn wir die Gelegenheit bekommen, filmen wir gerne nochmal.",
         "show_chapters_on_course": False,
+        "allow_embed": False,
         "semester": "2007ws",
-        "default_authentication_methods": []
+        "default_authentication_methods": [],
+        "authentication_information": "",
     }
 TEST_DATA_COURSE_3_NO_LEC_MOD = TEST_DATA_COURSE_3_NO_LEC | \
     {
-        "is_listed": True,
-        "is_visible": True
+        "listed": True,
+        "visible": True,
+        "internal_comment": "",
     }
 TEST_DATA_COURSE_3 = TEST_DATA_COURSE_3_NO_LEC | {
     "lectures": [TEST_DATA_LECTURE_25, TEST_DATA_LECTURE_29]
@@ -667,22 +775,25 @@ TEST_DATA_COURSE_3_MOD = TEST_DATA_COURSE_3_NO_LEC_MOD | {
 _TEST_DATA_COURSE_13_NO_LEC = \
     {
         "id": 13,
-        "id_string": "09ss-fosap",
+        "handle": "09ss-fosap",
         "full_name": "Formale Systeme, Automaten, Prozesse",
         "short_name": "FoSAP",
         "organizer": "Prof. Rossmanith",
         "topic": "Informatik",
         "description": "Seite des Lehrstuhls ...",
         "show_chapters_on_course": False,
+        "allow_embed": True,
         "semester": "2009ss",
         "default_authentication_methods": [
             "public"
-        ]
+        ],
+        "authentication_information": "",
     }
 TEST_DATA_COURSE_13_NO_LEC_MOD = _TEST_DATA_COURSE_13_NO_LEC | \
     {
-        "is_listed": True,
-        "is_visible": False
+        "listed": True,
+        "visible": False,
+        "internal_comment": "",
     }
 TEST_DATA_COURSE_13_MOD = TEST_DATA_COURSE_13_NO_LEC_MOD | {
     "lectures": [TEST_DATA_LECTURE_185_MOD, TEST_DATA_LECTURE_186_MOD]
@@ -691,22 +802,25 @@ TEST_DATA_COURSE_13_MOD = TEST_DATA_COURSE_13_NO_LEC_MOD | {
 TEST_DATA_COURSE_62_NO_LEC = \
     {
         "id": 62,
-        "id_string": "11ws-infin",
+        "handle": "11ws-infin",
         "full_name": "Investition und Finanzierung",
         "short_name": "InFin",
         "organizer": "Prof. Breuer",
         "topic": "BWL",
         "description": "Seite im Campus ...",
         "show_chapters_on_course": False,
+        "allow_embed": True,
         "semester": "2011ws",
         "default_authentication_methods": [
             "moodle"
-        ]
+        ],
+        "authentication_information": "",
     }
 TEST_DATA_COURSE_62_NO_LEC_MOD = TEST_DATA_COURSE_62_NO_LEC | \
     {
-        "is_listed": False,
-        "is_visible": True
+        "listed": False,
+        "visible": True,
+        "internal_comment": "",
     }
 TEST_DATA_COURSE_62 = TEST_DATA_COURSE_62_NO_LEC | {
     "lectures": [TEST_DATA_LECTURE_1186, TEST_DATA_LECTURE_1187, TEST_DATA_LECTURE_1188]
@@ -722,12 +836,13 @@ TEST_DATA_ANNOUNCEMENT_1 = \
         "id": 1,
         "text": "Test Ankündigung",
         "type": "info",
-        "visibility": "only_main_page"
+        "page_visibility": "only_main_page",
     }
 TEST_DATA_ANNOUNCEMENT_1_MOD = TEST_DATA_ANNOUNCEMENT_1 | \
     {
-        "is_currently_visible": True,
-        "has_expired": False
+        "publish_time": "2024-01-26T00:00:00",
+        "expiration_time": "2050-03-25T00:00:00",
+        "visible": True,
     }
 
 TEST_DATA_ANNOUNCEMENT_2 = \
@@ -735,12 +850,13 @@ TEST_DATA_ANNOUNCEMENT_2 = \
         "id": 2,
         "text": "Neue Ankündigung",
         "type": "info",
-        "visibility": "all_pages"
+        "page_visibility": "all_pages",
     }
 TEST_DATA_ANNOUNCEMENT_2_MOD = TEST_DATA_ANNOUNCEMENT_2 | \
     {
-        "is_currently_visible": True,
-        "has_expired": False
+        "publish_time": "2024-03-01T00:00:00",
+        "expiration_time": None,
+        "visible": True,
     }
 
 _TEST_DATA_ANNOUNCEMENT_3 = \
@@ -748,12 +864,13 @@ _TEST_DATA_ANNOUNCEMENT_3 = \
         "id": 3,
         "text": "Versteckte Ankündigung",
         "type": "info",
-        "visibility": "all_pages"
+        "page_visibility": "all_pages",
     }
 TEST_DATA_ANNOUNCEMENT_3_MOD = _TEST_DATA_ANNOUNCEMENT_3 | \
     {
-        "is_currently_visible": False,
-        "has_expired": False
+        "publish_time": None,
+        "expiration_time": None,
+        "visible": False,
     }
 
 _TEST_DATA_ANNOUNCEMENT_4 = \
@@ -761,12 +878,13 @@ _TEST_DATA_ANNOUNCEMENT_4 = \
         "id": 4,
         "text": "Upcoming Announcement",
         "type": "warning",
-        "visibility": "all_pages"
+        "page_visibility": "all_pages",
     }
 TEST_DATA_ANNOUNCEMENT_4_MOD = _TEST_DATA_ANNOUNCEMENT_4 | \
     {
-        "is_currently_visible": False,
-        "has_expired": False
+        "publish_time": "2050-03-22T00:00:00",
+        "expiration_time": None,
+        "visible": True,
     }
 
 _TEST_DATA_ANNOUNCEMENT_5 = \
@@ -774,68 +892,70 @@ _TEST_DATA_ANNOUNCEMENT_5 = \
         "id": 5,
         "text": "Expired Announcement",
         "type": "info",
-        "visibility": "only_main_page"
+        "page_visibility": "only_main_page",
     }
 TEST_DATA_ANNOUNCEMENT_5_MOD = _TEST_DATA_ANNOUNCEMENT_5 | \
     {
-        "is_currently_visible": False,
-        "has_expired": True
+        "publish_time": "2024-01-26T00:00:00",
+        "expiration_time": "2024-02-01T00:00:00",
+        "visible": True,
     }
 
 # -------------------- Featured --------------------
 
 TEST_DATA_FEATURED_1 = \
     {
+        "id": 1,
         "type": "plain",
         "title": "Video AG",
-        "text": "Wir machen Vorlesungsvideos"
+        "text": "Wir machen Vorlesungsvideos",
     }
 TEST_DATA_FEATURED_1_MOD = TEST_DATA_FEATURED_1 | \
     {
-        "id": 1,
-        "is_visible": True,
-        "display_priority": 3
+        "visible": True,
+        "display_priority": 2,
     }
 
 _TEST_DATA_FEATURED_2 = \
     {
+        "id": 2,
         "type": "image",
         "title": "Image Panel",
         "text": "",
-        "image_url": "https://example.com/image.jpg"
+        "image_url": "https://example.com/image.jpg",
     }
 TEST_DATA_FEATURED_2_MOD = _TEST_DATA_FEATURED_2 | \
     {
-        "id": 2,
-        "is_visible": False,
-        "display_priority": 0
+        "visible": False,
+        "display_priority": 1,
     }
 
 TEST_DATA_FEATURED_3 = \
     {
-        "type": "course_list",
-        "title": "Courses Panel",
+        "id": 3,
+        "type": "course",
+        "title": "Course Panel",
         "text": "Vom Winter 07",
-        "courses": [2, 3]
+        "course_id": None,
     }
 TEST_DATA_FEATURED_3_MOD = TEST_DATA_FEATURED_3 | \
     {
-        "id": 3,
-        "is_visible": True,
-        "display_priority": 1
+        "visible": True,
+        "display_priority": -1,
+        "course_id": 13,
     }
 
 TEST_DATA_FEATURED_4 = \
     {
+        "id": 4,
         "type": "lecture",
         "title": "Lecture Panel",
         "text": "Watch this!",
-        "lecture": TEST_DATA_LECTURE_3_NO_CHAP_MEDIA
+        "lecture": TEST_DATA_LECTURE_3,
     }
 TEST_DATA_FEATURED_4_MOD = TEST_DATA_FEATURED_4 | \
     {
-        "lecture": TEST_DATA_LECTURE_3_NO_CHAP_MEDIA_MOD,
-        "id": 4,
-        "is_visible": True,
-        "display_priority": 2
+        "lecture": TEST_DATA_LECTURE_3_MOD,
+        "visible": True,
+        "display_priority": 4,
     }