diff --git a/program/views.py b/program/views.py
index 639589af5933a8c3de29732d874563c30acb432c..f42b56fb9b0f616b39f63f4f99c5495b57a31074 100644
--- a/program/views.py
+++ b/program/views.py
@@ -19,6 +19,7 @@
 #
 
 import json
+import logging
 from datetime import date, datetime, time, timedelta
 
 from django.contrib.auth.models import User
@@ -37,6 +38,7 @@ from program.serializers import TypeSerializer, LanguageSerializer, MusicFocusSe
     UserSerializer
 from program.utils import get_cached_shows
 
+logger = logging.getLogger(__name__)
 
 def json_day_schedule(request, year=None, month=None, day=None):
     if year is None and month is None and day is None:
@@ -528,7 +530,6 @@ class APITimeSlotViewSet(viewsets.ModelViewSet):
         start = datetime.combine(date.today(), time(0, 0))
         end = start + timedelta(days=60)
 
-
         if ('start' in self.request.query_params) and ('end' in self.request.query_params):
             start = datetime.combine(datetime.strptime(self.request.query_params.get('start'), '%Y-%m-%d').date(), time(0, 0))
             end = datetime.combine(datetime.strptime(self.request.query_params.get('end'), '%Y-%m-%d').date(), time(23, 59))
@@ -536,6 +537,15 @@ class APITimeSlotViewSet(viewsets.ModelViewSet):
         # Is this safe?
         order = self.request.query_params.get('order', '-start')
 
+        if ('surrounding' in self.request.query_params):
+            today = datetime.today()
+
+            nearest_timeslots_in_future = TimeSlot.objects.filter(start__gte=today).order_by('start').values_list('id', flat=True)[:5]
+            nearest_timeslots_in_past = TimeSlot.objects.filter(start__lt=today).order_by('-start').values_list('id', flat=True)[:5]
+            relevant_timeslot_ids = list(nearest_timeslots_in_future) + list(nearest_timeslots_in_past)
+
+            return TimeSlot.objects.filter(id__in=relevant_timeslot_ids).order_by(order)
+
         # Endpoints
 
         #
@@ -566,6 +576,7 @@ class APITimeSlotViewSet(viewsets.ModelViewSet):
         pk = int_or_none('pk', self.kwargs)
         show_pk = int_or_none('show_pk', self.kwargs)
 
+
         if show_pk:
             timeslot = get_object_or_404(TimeSlot, pk=pk, show=show_pk)
         else: