From dbbc2f573502b7d1ace837f37989e646bb78bc7b Mon Sep 17 00:00:00 2001 From: SergeantPanda Date: Fri, 24 Apr 2026 15:28:28 -0500 Subject: [PATCH] fix(api): update parameter descriptions for clarity and consistency in Program API Co-authored-by: Copilot --- apps/epg/api_views.py | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/apps/epg/api_views.py b/apps/epg/api_views.py index 6de43ae6..1607fbe7 100644 --- a/apps/epg/api_views.py +++ b/apps/epg/api_views.py @@ -182,12 +182,6 @@ class ProgramViewSet(viewsets.ModelViewSet): 'title', OpenApiTypes.STR, description='Title search query. Supports AND/OR operators (case-insensitive), quoted phrases, and parentheses. Double-quote a phrase to match it literally: `"Law and Order"`. Unquoted space-separated terms are matched as a phrase; use AND/OR to combine separate terms.', - examples=[ - 'football', - 'premier AND league', - 'Newcastle OR Villa', - '(Newcastle OR NEW) AND (Villa OR AST)' - ] ), OpenApiParameter('title_regex', OpenApiTypes.BOOL, description='Enable regex matching for title (case-insensitive). Example: `^The` matches titles starting with "The".'), OpenApiParameter('title_whole_words', OpenApiTypes.BOOL, description='Match whole words only in title. Prevents "NEW" from matching "News".'), @@ -198,17 +192,17 @@ class ProgramViewSet(viewsets.ModelViewSet): ), OpenApiParameter('description_regex', OpenApiTypes.BOOL, description='Enable regex matching for description (case-insensitive).'), OpenApiParameter('description_whole_words', OpenApiTypes.BOOL, description='Match whole words only in description.'), - OpenApiParameter('start_after', OpenApiTypes.DATETIME, description='Filter programs starting at or after this time. ISO 8601 format.', examples=['2026-02-14T18:00:00Z']), + OpenApiParameter('start_after', OpenApiTypes.DATETIME, description='Filter programs starting at or after this time. ISO 8601 format, e.g. `2026-02-14T18:00:00Z`.'), OpenApiParameter('start_before', OpenApiTypes.DATETIME, description='Filter programs starting at or before this time. ISO 8601 format.'), OpenApiParameter('end_after', OpenApiTypes.DATETIME, description='Filter programs ending at or after this time. ISO 8601 format.'), OpenApiParameter('end_before', OpenApiTypes.DATETIME, description='Filter programs ending at or before this time. ISO 8601 format.'), - OpenApiParameter('airing_at', OpenApiTypes.DATETIME, description='Find programs airing at this exact moment (start_time ≤ airing_at < end_time). ISO 8601 format.', examples=['2026-02-14T20:00:00Z']), - OpenApiParameter('channel', OpenApiTypes.STR, description='Filter by channel name (case-insensitive substring match).', examples=['BBC One', 'Sky Sports']), + OpenApiParameter('airing_at', OpenApiTypes.DATETIME, description='Find programs airing at this exact moment (start_time ≤ airing_at < end_time). ISO 8601 format, e.g. `2026-02-14T20:00:00Z`.'), + OpenApiParameter('channel', OpenApiTypes.STR, description='Filter by channel name (case-insensitive substring match). e.g. `BBC One`, `Sky Sports`.'), OpenApiParameter('channel_id', OpenApiTypes.INT, description='Filter by exact channel ID.'), OpenApiParameter('stream', OpenApiTypes.STR, description='Filter by stream name (case-insensitive substring match).'), - OpenApiParameter('group', OpenApiTypes.STR, description='Filter by channel group or stream group name (case-insensitive substring match).', examples=['Sports', 'UK Channels']), + OpenApiParameter('group', OpenApiTypes.STR, description='Filter by channel group or stream group name (case-insensitive substring match). e.g. `Sports`, `UK Channels`.'), OpenApiParameter('epg_source', OpenApiTypes.INT, description='Filter by EPG source ID.'), - OpenApiParameter('fields', OpenApiTypes.STR, description='Comma-separated list of fields to include. Omit to return all fields.', examples=['title,start_time,end_time', 'title,description,channels']), + OpenApiParameter('fields', OpenApiTypes.STR, description='Comma-separated list of fields to include. Omit to return all fields. e.g. `title,start_time,end_time`.'), OpenApiParameter('page', OpenApiTypes.INT, description='Page number for pagination (default: 1).'), OpenApiParameter('page_size', OpenApiTypes.INT, description='Results per page (default: 50, max: 500).'), ],