I am getting an error while using Python YouTube API

Question:

I am trying to create a Python program to get channel statisitics, but when I run it the YouTube API website gives this output (error):

{
  "error": {
    "code": 400,
    "message": "'statisitcs'",
    "errors": [
      {
        "message": "'statisitcs'",
        "domain": "youtube.part",
        "reason": "unknownPart",
        "location": "part",
        "locationType": "parameter"
      }
    ]
  }
}

This is my code:

class YTstats:
    def __init__(self, api_key, channel_id):
        self.api_key = api_key
        self.channel_id = channel_id
        self.channel_stats = None

    def get_channel_statistics(self):
        url = f'https://www.googleapis.com/youtube/v3/channels?part=statisitcs&id={self.channel_id}&key={self.api_key}'
        print(url)

API_KEY = 'I cannot share my api key so I am not showing it but it is in my code'
yt = YTstats(API_KEY, 'UCbXgNpp0jedKWcQiULLbDTA')
yt.get_channel_statistics()
Asked By: TheCoder1001

||

Answers:

You have a typo here part=statisitcs – as you mentioned in your comment – and after looking closely to the code you provided in your question.

Next time, check closely your code and try to replicate the error using the try-it demo feature in the YouTube Data API documentation.


I do get the statistics of the channel_id you provided – that is: UCbXgNpp0jedKWcQiULLbDTA:

These are their statistics:

"statistics": {
    "viewCount": "5642720",
    "subscriberCount": "98400",
    "hiddenSubscriberCount": false,
    "videoCount": "158"
  }
}

See the demo here.

Here is the full response:

{
  "kind": "youtube#channelListResponse",
  "etag": "lG-nYlbLnN81gtjVKe1zKPW6v7A",
  "pageInfo": {
    "totalResults": 1,
    "resultsPerPage": 5
  },
  "items": [
    {
      "kind": "youtube#channel",
      "etag": "j4Fo8qKbWrLHnQYB8sCI8_I4v9A",
      "id": "UCbXgNpp0jedKWcQiULLbDTA",
      "snippet": {
        "title": "Python Engineer",
        "description": "Free Python and Machine Learning Tutorials!nnHi, I'm Patrick. I’m a passionate Software Engineer who loves Machine Learning, Computer Vision, and Data Science. I create free content in order to help more people get into those fields. If you have any questions, feedback, or comments, just shoot me a message! I am happy to talk to you :)nnIf you like my content, please subscribe to the channel!nnPlease check out my website for more information:nhttps://www.python-engineer.comnnIf you find these videos useful and would like to support my work you can find me on Patreon:nhttps://www.patreon.com/patrickloebernnLegal: https://www.python-engineer.com/legal-notice/n",
        "customUrl": "pythonengineer",
        "publishedAt": "2019-05-03T11:22:33Z",
        "thumbnails": {
          "default": {
            "url": "https://yt3.ggpht.com/ytc/AKedOLTs-Pvd4mvUi-m2rDLd8bzrKwS5a8C9HnDbkUDzHw=s88-c-k-c0x00ffffff-no-rj",
            "width": 88,
            "height": 88
          },
          "medium": {
            "url": "https://yt3.ggpht.com/ytc/AKedOLTs-Pvd4mvUi-m2rDLd8bzrKwS5a8C9HnDbkUDzHw=s240-c-k-c0x00ffffff-no-rj",
            "width": 240,
            "height": 240
          },
          "high": {
            "url": "https://yt3.ggpht.com/ytc/AKedOLTs-Pvd4mvUi-m2rDLd8bzrKwS5a8C9HnDbkUDzHw=s800-c-k-c0x00ffffff-no-rj",
            "width": 800,
            "height": 800
          }
        },
        "localized": {
          "title": "Python Engineer",
          "description": "Free Python and Machine Learning Tutorials!nnHi, I'm Patrick. I’m a passionate Software Engineer who loves Machine Learning, Computer Vision, and Data Science. I create free content in order to help more people get into those fields. If you have any questions, feedback, or comments, just shoot me a message! I am happy to talk to you :)nnIf you like my content, please subscribe to the channel!nnPlease check out my website for more information:nhttps://www.python-engineer.comnnIf you find these videos useful and would like to support my work you can find me on Patreon:nhttps://www.patreon.com/patrickloebernnLegal: https://www.python-engineer.com/legal-notice/n"
        }
      },
      "contentDetails": {
        "relatedPlaylists": {
          "likes": "",
          "uploads": "UUbXgNpp0jedKWcQiULLbDTA"
        }
      },
      "statistics": {
        "viewCount": "5642720",
        "subscriberCount": "98400",
        "hiddenSubscriberCount": false,
        "videoCount": "158"
      }
    }
  ]
}

Try to wait a few minutes after the call you made – probably, the API couldn’t retrieve the data you requested due to excessive requests or the channel itself didn’t have their statistics publicly available.

This problem is fixed now (it was a typo)

Answered By: TheCoder1001
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.