I have an API token, which I've embedded into the YT API function call. However, I'm still receiving an error 403 response. The function is directly copied from Google's GitHub website under search.py.
DEVELOPER_KEY = 'my_token_here'YOUTUBE_API_SERVICE_NAME = 'youtube'YOUTUBE_API_VERSION = 'v3'def youtube_search(): youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION, developerKey=DEVELOPER_KEY) # Call the search.list method to retrieve results matching the specified # query term. search_response = youtube.search().list( #q=options.q, part='id,snippet', #maxResults=options.max_results ).execute() videos = [] channels = [] playlists = [] # Add each result to the appropriate list, and then display the lists of # matching videos, channels, and playlists. for search_result in search_response.get('items', []): if search_result['id']['kind'] == 'youtube#video': videos.append('%s (%s)' % (search_result['snippet']['title'], search_result['id']['videoId'])) elif search_result['id']['kind'] == 'youtube#channel': channels.append('%s (%s)' % (search_result['snippet']['title'], search_result['id']['channelId'])) elif search_result['id']['kind'] == 'youtube#playlist': playlists.append('%s (%s)' % (search_result['snippet']['title'], search_result['id']['playlistId'])) print('Videos:\n', '\n'.join(videos), '\n') print('Channels:\n', '\n'.join(channels), '\n') print('Playlists:\n', '\n'.join(playlists), '\n')When calling the youtube_search function, I am getting this error:
<HttpError 403 when requesting https://youtube.googleapis.com/youtube/v3/search?part=id%2Csnippet&key='my_token'=json returned "Requests to this API youtube method youtube.api.v3.V3DataSearchService.List are blocked.". Details: "[{'message': 'Requests to this API youtube method youtube.api.v3.V3DataSearchService.List are blocked.', 'domain': 'global', 'reason': 'forbidden'}]">