0
votes

I'm trying to create a simple YouTube API request and quickly get 403 response code (Quota limit). According to YouTube API docs, the default quota is 10000 units per day. According to the same docs, my request costs 3-5 units. However, I can get no more than 100 requests per day.

Here is a script that I wrote which consequently does the same requests:

key=<My Youtube API key>
request="https://www.googleapis.com/youtube/v3/search?type=video&part=id,snippet&order=relevance&maxResults=10&key=$key&q=hello"

for i in {0..1000}
 do
    echo "Try #$i"
    response=`curl -i $request | grep HTTP/2 | awk '{print $2}'`

    if [ $response == 403 ]
    then
      break
    fi
    echo $response
 done

echo "$i tries succeeded"

It gives

97 tries succeeded

In Google console I see that my script consumed almost all 10000 units

1

1 Answers

3
votes

According to the docs' quota calculator, the cost of one invocation of Search endpoint is not 3-5 units, but 100 units. (This fact is also mentioned on Search endpoint's doc page itself.) This explains that upon 100 calls to that endpoint your daily quota of 10000 units gets exhausted.