La API de GuardaFoto
Un solo endpoint. Le mandas un enlace y te responde con la foto pública a la que apunta y todos los tamaños reales en que existe. Gratis, sin llave, sin registro.
El endpoint
GET https://guardafoto.com/api/resolve?url=<ENLACE>
Manda el enlace codificado en el parámetro url (también sirve el nombre u). Responde JSON, con CORS abierto (Access-Control-Allow-Origin: *), así que puedes llamarla desde un navegador, un script o un plugin de WordPress — el nuestro lo hace.
Qué acepta
- Canal de YouTube — youtube.com/@usuario, /channel/UC…, /c/nombre o /user/nombre. Devuelve el avatar (hasta 1600×1600) y el banner (hasta 2560 px de ancho).
- Video de YouTube — watch?v=…, youtu.be/… o /shorts/…. Devuelve las miniaturas que existen de verdad; el «maxres» gris falso que reciben algunos videos se filtra.
- Spotify — enlaces de artista, álbum, canción o playlist. Devuelve la foto o portada en cada tamaño que Spotify publica.
- Deezer — enlaces de artista, álbum o canción, arte hasta 1000×1000.
- Apple Music — enlaces de álbum, portadas verificadas leyendo el archivo real, hasta 3000×3000 cuando Apple los publica.
Instagram, TikTok, X y Twitch no están en la API: bloquean la lectura anónima y no hay una vía honesta sin llave de cuenta. Si eso cambia algún día, aparecerán aquí.
Una respuesta se ve así
{
"ok": true,
"platform": "youtube",
"type": "channel",
"name": "Justin Bieber",
"source_url": "https://www.youtube.com/@justinbieber",
"images": [
{"kind": "avatar", "label": "1600x1600", "width": 1600, "height": 1600,
"url": "https://yt3.googleusercontent.com/…=s1600-c-k-…"},
{"kind": "banner", "label": "2560x424", "width": 2560, "height": 424,
"url": "https://yt3.googleusercontent.com/…"}
],
"cached": true
}
Cada tamaño de la lista se comprobó contra el archivo real antes de responder: un tamaño en la respuesta es un tamaño que existe. images viene ordenado de mayor a menor.
Errores
400 missing_url— no se mandó ningún enlace.400 unsupported_platform— el enlace no es de una plataforma soportada.404 not_found— el enlace existe en el papel pero la plataforma no tiene nada con ese ID.429 rate_limited— el uso justo es 120 peticiones por minuto y por IP. Las respuestas se guardan una hora en caché, así que el uso normal ni se acerca.
Uso justo
La API es gratis porque cuesta poco mantenerla: casi todo sale de la caché y de lo que las plataformas ya publican abiertamente. Úsala en tus herramientas y tus webs; un enlace de vuelta a guardafoto.com se agradece pero no es obligatorio. Rastrear el endpoint a lo bruto (pedir miles de IDs sin relación para montar un espejo) activará el límite — para eso está. Las fotos pertenecen a sus dueños; la API no cambia nada sobre sus derechos.
Dudas o una plataforma que necesites: la página de contacto.