YouTube API returns thumbnail URLs that are valid only temporarily
Since about three weeks ago, YouTube API is returning thumbnail URLs that are valid only temporarily. After a few days, those URLs return 404.
I have an integration to YouTube API to get the thumbnails of a video given its ID. Several of my customers use that function since a long time ago. This started happening a few weeks ago, without any change to my app code.
For example, for this video:
https://www.youtube.com/watch?v=COYm2FeVQ1U
The API returned this URL as the max resolution thumbnail:
https://i9.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg?sqp=CLTQ0t8F&rs=AOn4CLBaBo2ec_JB72afzLoV0_eZ7_ec4A
That URL worked a few days, then started returning 404. At that point, if I ask the API again about the thumbnail URLs, then it returns the correct thumbnail URL:
https://i.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg
This is happening intermitently with several of my customers, and I can't figure out why. I thought maybe this could happen because thumbnails aren't ready yet, but if that's the case, shouldn't Youtube redirect automatically to the valid URL?
Has anyone else experienced this? I've found this post:
Has the Youtube thumbnail URL changed?
where someone says that the URL returned in the first place corresponds to a private video. But I haven't been able to reproduce the error: I uploaded a video as private, and the API doesn't return that type of URLs for thumbnails. Where else should I look? Thanks in advance!
youtube-api-v3
add a comment |
Since about three weeks ago, YouTube API is returning thumbnail URLs that are valid only temporarily. After a few days, those URLs return 404.
I have an integration to YouTube API to get the thumbnails of a video given its ID. Several of my customers use that function since a long time ago. This started happening a few weeks ago, without any change to my app code.
For example, for this video:
https://www.youtube.com/watch?v=COYm2FeVQ1U
The API returned this URL as the max resolution thumbnail:
https://i9.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg?sqp=CLTQ0t8F&rs=AOn4CLBaBo2ec_JB72afzLoV0_eZ7_ec4A
That URL worked a few days, then started returning 404. At that point, if I ask the API again about the thumbnail URLs, then it returns the correct thumbnail URL:
https://i.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg
This is happening intermitently with several of my customers, and I can't figure out why. I thought maybe this could happen because thumbnails aren't ready yet, but if that's the case, shouldn't Youtube redirect automatically to the valid URL?
Has anyone else experienced this? I've found this post:
Has the Youtube thumbnail URL changed?
where someone says that the URL returned in the first place corresponds to a private video. But I haven't been able to reproduce the error: I uploaded a video as private, and the API doesn't return that type of URLs for thumbnails. Where else should I look? Thanks in advance!
youtube-api-v3
add a comment |
Since about three weeks ago, YouTube API is returning thumbnail URLs that are valid only temporarily. After a few days, those URLs return 404.
I have an integration to YouTube API to get the thumbnails of a video given its ID. Several of my customers use that function since a long time ago. This started happening a few weeks ago, without any change to my app code.
For example, for this video:
https://www.youtube.com/watch?v=COYm2FeVQ1U
The API returned this URL as the max resolution thumbnail:
https://i9.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg?sqp=CLTQ0t8F&rs=AOn4CLBaBo2ec_JB72afzLoV0_eZ7_ec4A
That URL worked a few days, then started returning 404. At that point, if I ask the API again about the thumbnail URLs, then it returns the correct thumbnail URL:
https://i.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg
This is happening intermitently with several of my customers, and I can't figure out why. I thought maybe this could happen because thumbnails aren't ready yet, but if that's the case, shouldn't Youtube redirect automatically to the valid URL?
Has anyone else experienced this? I've found this post:
Has the Youtube thumbnail URL changed?
where someone says that the URL returned in the first place corresponds to a private video. But I haven't been able to reproduce the error: I uploaded a video as private, and the API doesn't return that type of URLs for thumbnails. Where else should I look? Thanks in advance!
youtube-api-v3
Since about three weeks ago, YouTube API is returning thumbnail URLs that are valid only temporarily. After a few days, those URLs return 404.
I have an integration to YouTube API to get the thumbnails of a video given its ID. Several of my customers use that function since a long time ago. This started happening a few weeks ago, without any change to my app code.
For example, for this video:
https://www.youtube.com/watch?v=COYm2FeVQ1U
The API returned this URL as the max resolution thumbnail:
https://i9.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg?sqp=CLTQ0t8F&rs=AOn4CLBaBo2ec_JB72afzLoV0_eZ7_ec4A
That URL worked a few days, then started returning 404. At that point, if I ask the API again about the thumbnail URLs, then it returns the correct thumbnail URL:
https://i.ytimg.com/vi/COYm2FeVQ1U/maxresdefault.jpg
This is happening intermitently with several of my customers, and I can't figure out why. I thought maybe this could happen because thumbnails aren't ready yet, but if that's the case, shouldn't Youtube redirect automatically to the valid URL?
Has anyone else experienced this? I've found this post:
Has the Youtube thumbnail URL changed?
where someone says that the URL returned in the first place corresponds to a private video. But I haven't been able to reproduce the error: I uploaded a video as private, and the API doesn't return that type of URLs for thumbnails. Where else should I look? Thanks in advance!
youtube-api-v3
youtube-api-v3
asked Nov 22 at 12:23
Lisandro
346
346
add a comment |
add a comment |
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53430954%2fyoutube-api-returns-thumbnail-urls-that-are-valid-only-temporarily%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53430954%2fyoutube-api-returns-thumbnail-urls-that-are-valid-only-temporarily%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown