diff --git a/program/views.py b/program/views.py
index 9ea287a99f6186ec410a8280ee5f297f9ca6c64e..6591e3987dc3862264b5b067571a1b8a9b4f31eb 100644
--- a/program/views.py
+++ b/program/views.py
@@ -1668,3 +1668,20 @@ class APIPlaylistViewSet(viewsets.ModelViewSet):
             serializer.save()
 
             return Response(serializer.data, status=status.HTTP_201_CREATED)
+
+    def update(self, request, *args, **kwargs):
+        playlist = self.get_object()
+
+        data = request.data
+        data.update({"show_id": playlist.show_id})  # we already know it at this point
+
+        serializer = PlaylistSerializer(
+            context={"request": request},
+            data=data,
+            instance=playlist,
+        )
+
+        if serializer.is_valid(raise_exception=True):
+            serializer.save()
+
+            return Response(serializer.data, status=status.HTTP_200_OK)