Guia

Como publicar YouTube Shorts automaticamente via API

Los YouTube Shorts generan miles de millones de visualizaciones diarias, pero publicarlos a traves de YouTube Studio es tedioso, especialmente si gestionas multiples canales o quieres publicar simultaneamente en TikTok y Reels. Con la API de redes sociales de Upload-Post, puedes subir y programar YouTube Shorts con una sola llamada a la API. Sin complicaciones de OAuth, sin malabarismos con cuotas.

Por qué automatizar la subida de YouTube Shorts

Los YouTube Shorts son la forma mas rapida de hacer crecer un canal ahora mismo. El algoritmo impulsa agresivamente el contenido vertical corto, y los creadores que publican Shorts de manera consistente ven un crecimiento de suscriptores que tardaria meses con solo videos de larga duracion.

El problema es el proceso de subida. YouTube Studio requiere que inicies sesion, completes campos de metadatos, establezcas la visibilidad, agregues etiquetas y publiques. Multiplica eso por cinco Shorts a la semana en dos canales, y estaras dedicando horas a trabajo repetitivo.

La API oficial de datos de YouTube (v3) es una opcion, pero viene con una friccion significativa. Necesitas crear un proyecto de Google Cloud, configurar pantallas de consentimiento OAuth 2.0, manejar actualizaciones de tokens y gestionar una cuota diaria de subida que se reinicia de forma impredecible. Para la mayoria de los desarrolladores, es mas infraestructura de la que justifica la tarea.

Upload-Post envuelve todo eso en una unica solicitud POST. Envias tu video, configuras los metadatos y la API se encarga de la autenticacion, la validacion de formato y la entrega a YouTube. La misma solicitud tambien puede publicar en TikTok e Instagram Reels simultaneamente.

Subir un YouTube Short vía API

El endpoint de subida acepta un formulario multipart con tu archivo de video y metadatos. Para que un video sea tratado como YouTube Short, debe ser vertical (relacion de aspecto 9:16) y de menos de 60 segundos. Aqui tienes un ejemplo con cURL:

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorización: Apikey tu-clave-api-aquí" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=This cooking hack saves 20 minutes every night #shorts #cooking" \
  -F "platform[]=youtube" \
  -F "youtube_description=Quick kitchen tip that changed my meal prep routine. Full recipe on my channel." \
  -F "youtube_tags=cooking,kitchen hack,meal prep,shorts" \
  -F "youtube_visibility=public"

Cuando la subida tiene exito, la API devuelve una respuesta con los detalles del trabajo:

{
  "success": true,
  "job_id": "yt_short_abc123",
  "platform": "youtube",
  "status": "processing"
}

El campo video acepta una ruta de archivo local (con prefijo @ en cURL) o una URL publica. El campo title se mapea al titulo del video de YouTube. Incluir #shorts en el titulo no es estrictamente necesario para la deteccion de Shorts (YouTube usa la relacion de aspecto y la duracion), pero puede ayudar con la visibilidad.

Parámetros específicos de YouTube

Ademas de los campos estandar video, title, user y platform[], la API expone varias opciones especificas de YouTube:

Parámetro Valores Descripción
youtube_description string La descripcion del video que se muestra debajo del reproductor. Soporta enlaces y saltos de linea. Si se omite, se usa el campo principal title.
youtube_tags cadena separada por comas Etiquetas para busqueda y descubrimiento en YouTube. Ejemplo: "cooking,recipe,shorts". YouTube permite hasta 500 caracteres en total.
youtube_visibility "public", "private", "unlisted" Controla quién puede ver el video. Por defecto es "public" si se omite.
youtube_shorts true / false Fuerza que el video sea tratado como Short, incluso si no cumple los criterios de detección automática. Útil para casos límite like square videos (1:1).
youtube_category_id integer ID de categoría de YouTube. Valores comunes: 22 (Gente y blogs), 24 (Entretenimiento), 26 (Instrucciones y estilo), 28 (Ciencia y tecnología).
youtube_playlist_id string Agrega automáticamente el video subido a una lista de reproducción específica. Pasa el ID de la lista de reproducción de tu canal de YouTube.
youtube_made_for_kids true / false Indicador de cumplimiento COPPA. Establece true si el contenido esta dirigido a ninos. Esto desactiva los comentarios y los anuncios personalizados en el video.

El indicador youtube_shorts es particularmente util cuando quieres garantizar el tratamiento como Short. Normalmente, YouTube detecta los Shorts basandose en la relacion de aspecto y la duracion, pero si tu video esta justo en el limite (por ejemplo, formato cuadrado, o muy cerca de los 60 segundos), establecer explicitamente youtube_shorts=true elimina la ambiguedad.

Programar Shorts en horarios óptimos

Publicar en el momento adecuado importa. Los YouTube Shorts obtienen la mayor traccion inicial durante las primeras horas despues de publicarse, por lo que programar tu subida para coincidir con las horas activas de tu audiencia le da al algoritmo una senal mas fuerte.

Para programar un Short, agrega scheduled_date (formato ISO-8601) y timezone (formato IANA) a tu solicitud:

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorización: Apikey tu-clave-api-aquí" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=5 AM routine that actually works #shorts #productivity" \
  -F "platform[]=youtube" \
  -F "youtube_visibility=public" \
  -F "scheduled_date=2025-09-15T08:00:00Z" \
  -F "timezone=America/New_York"

Para programacion automatica, usa el sistema de cola en su lugar. Configura tus horarios de publicacion preferidos una vez, y luego agrega contenido con add_to_queue=true. La API asigna automaticamente cada video al siguiente horario disponible. Esto es ideal para flujos de trabajo en lote donde subes una semana de contenido en una sola sesion. Consulta la guia completa de programacion para detalles sobre la configuracion de la cola.

Los mejores horarios para publicar YouTube Shorts varian segun el nicho, pero los patrones generales muestran buen rendimiento entre las 7 AM y las 9 AM hora local (navegacion matutina), de 12 PM a 2 PM (pausas para almuerzo) y de 7 PM a 10 PM (relajacion nocturna). Usa el calendario de fechas clave para redes sociales para alinear tus Shorts con fechas y eventos en tendencia.

Publicación cruzada de Shorts a TikTok y Reels

Un video vertical de menos de 60 segundos funciona en YouTube Shorts, TikTok e Instagram Reels. En lugar de subir el mismo archivo tres veces a traves de tres interfaces diferentes, envialo una vez y deja que la API lo distribuya:

curl -X POST https://api.upload-post.com/api/upload \
  -H "Autorización: Apikey tu-clave-api-aquí" \
  -F "[email protected]" \
  -F "user=mybrand" \
  -F "title=Wait for it... #shorts" \
  -F "tiktok_title=Wait for it... #fyp #viral" \
  -F "instagram_title=Wait for it... Full video on YouTube (link in bio)" \
  -F "platform[]=youtube" \
  -F "platform[]=tiktok" \
  -F "platform[]=instagram" \
  -F "media_type=REELS" \
  -F "youtube_visibility=public" \
  -F "privacy_level=PUBLIC" \
  -F "add_to_queue=true"

Observa algunos detalles: media_type=REELS le indica a Instagram que publique como Reel (no como publicacion del feed). Cada plataforma obtiene su propia descripcion via tiktok_title e instagram_title, mientras que el title principal va a YouTube. El indicador add_to_queue=true programa los tres segun la configuracion de tu cola.

Para un analisis mas profundo de flujos de trabajo multiplataforma, consulta la guia de publicacion cruzada. Si estas reutilizando videos largos de YouTube como Shorts, la guia de reutilizacion cubre todo el pipeline de recorte y distribucion.

Subida en lote de Shorts con Python

Cuando tienes una carpeta llena de Shorts listos para publicar, el SDK de Python facilita la subida en lote. Instala el SDK primero:

pip install upload-post

Luego recorre tus videos y programa cada uno en intervalos escalonados:

import os
import glob
from datetime import datetime, timedelta
from upload_post import UploadPostClient

client = UploadPostClient(api_key="your-api-key-here")

video_folder = "/path/to/youtube-shorts"
videos = sorted(glob.glob(os.path.join(video_folder, "*.mp4")))

# Start scheduling from tomorrow at 8 AM Eastern
base_time = (datetime.now() + timedelta(days=1)).replace(
    hour=8, minute=0, second=0, microsecond=0
)

print(f"Found {len(videos)} Shorts to schedule")

for i, video_path in enumerate(videos):
    publish_time = base_time + timedelta(hours=3 * i)  # Every 3 hours
    filename = os.path.basename(video_path)
    title = filename.replace(".mp4", "").replace("-", " ").replace("_", " ")

    try:
        response = client.upload_video(
            video_path=video_path,
            title=f"{title} #shorts",
            user="mybrand",
            platforms=["youtube"],
            scheduled_date=publish_time.isoformat(),
            timezone="America/New_York",
            youtube_visibility="public",
            youtube_tags="shorts,daily",
            youtube_shorts=True,
            async_upload=True
        )
        job_id = response.get("job_id", "pending")
        print(f"[{i+1}/{len(videos)}] Scheduled {filename} for {publish_time} (Job: {job_id})")
    except Exception as e:
        print(f"[{i+1}/{len(videos)}] Failed: {filename} - {e}")

print("¡Todos los Shorts programados!")

Este script espacía cada Short con tres horas de diferencia, dando a cada uno tiempo para ganar traccion inicial antes de que el siguiente se publique. Ajusta el timedelta para que coincida con tu cadencia preferida. Tambien puedes pasar platforms=["youtube", "tiktok", "instagram"] para publicar cada Short en varias plataformas automaticamente.

Para operaciones de video en lote a escala, la guia de subida masiva cubre patrones avanzados como subidas paralelas, logica de reintentos y seguimiento de estado basado en webhooks.

Automatización sin código con n8n

Si prefieres flujos de trabajo visuales en lugar de escribir codigo, n8n es una opcion solida. Una configuracion comun es vigilar una carpeta de Google Drive para nuevos videos y publicarlos automaticamente como YouTube Shorts cada vez que aparece un archivo.

El flujo de trabajo tiene tres nodos:

  1. Activador de Google Drive: se ejecuta cuando se agrega un nuevo archivo MP4 a tu carpeta "Shorts".
  2. Solicitud HTTP: envia un POST multipart/form-data a https://api.upload-post.com/api/upload con el video, titulo derivado del nombre del archivo, platform[]=youtube y add_to_queue=true.
  3. Notificación por Slack/Email: confirma que la subida tuvo exito o te alerta si fallo.

Tenemos plantillas listas que cubren flujos de trabajo de YouTube Shorts:

Explora todas las plantillas de n8n disponibles para mas ideas. Tambien puedes construir automatizaciones similares con Make.com.

Requisitos de YouTube Shorts

Antes de subir, asegurate de que tus videos cumplan con las especificaciones de YouTube para Shorts. Subir un archivo que no cumpla estos requisitos resultara en una subida fallida o que el video sea tratado como una subida regular (no Short).

Requisito Specification
Duración máxima 60 segundos
Relación de aspecto 9:16 (vertical). Cuadrado (1:1) tambien funciona pero se recomienda vertical.
Resolución recomendada 1080x1920 pixeles
Formatos soportados MP4, MOV, WebM
Tamaño máximo de archivo 256 GB (limite de YouTube), aunque los Shorts cortos tipicamente pesan menos de 50 MB
Códec H.264 recomendado. H.265 (HEVC) tambien es soportado.
Tasa de fotogramas 30 o 60 fps recomendado

Si tus videos de origen estan en formato horizontal, la API de FFmpeg puede recortarlos y redimensionarlos a formato vertical en la nube antes de publicar. Esto es especialmente util cuando reutilizas videos de larga duracion como Shorts.

Preguntas frecuentes

¿Puedo subir videos regulares (de larga duracion) de YouTube tambien?

Si. El mismo endpoint POST /api/upload gestiona tanto Shorts como videos regulares. La diferencia es automatica: los videos de menos de 60 segundos en formato vertical se tratan como Shorts, mientras que todo lo demas se publica como un video estandar de YouTube. Tambien puedes usar el parametro youtube_shorts=true para forzar el tratamiento como Short, u omitirlo para que YouTube decida segun las dimensiones del archivo y la duracion.

¿Funciona con multiples canales de YouTube?

Si. Cada canal de YouTube conectado esta representado por un valor diferente de user en tu cuenta de Upload-Post. Conectas los canales a traves del panel de control, y luego especificas en que canal publicar pasando el parametro user correspondiente. Puedes subir el mismo Short a multiples canales haciendo solicitudes separadas con diferentes valores de user.

¿Y la monetizacion en Shorts?

Upload-Post no afecta tu estado de monetizacion. Los videos subidos a traves de la API se tratan de forma identica a los videos subidos a traves de YouTube Studio. Si tu canal esta en el Programa de Socios de YouTube, los Shorts seran elegibles para el programa de reparto de ingresos de Shorts igual que cualquier otro Short. El indicador youtube_made_for_kids es relevante aqui: establecerlo como true desactiva los anuncios personalizados, lo que afecta los ingresos.

¿Cuales son las diferencias entre Shorts, Reels y TikToks?

Los tres son formatos de video vertical corto, pero tienen restricciones diferentes. Los YouTube Shorts tienen un maximo de 60 segundos, los Instagram Reels pueden durar hasta 15 minutos, y TikTok permite hasta 10 minutos. Para publicacion cruzada, manten tus videos por debajo de los 60 segundos para que califiquen como Shorts en YouTube. Las descripciones tambien difieren: TikTok favorece hashtags en tendencia y tono informal, mientras que los YouTube Shorts se benefician de titulos buscables y descripciones ricas en palabras clave. Usa campos de titulo especificos por plataforma (tiktok_title, instagram_title) para adaptar cada descripcion. Consulta la guia de programacion de TikTok para consejos especificos de TikTok.

¿Hay un plan gratuito?

Si. Upload-Post incluye un plan gratuito con 10 subidas al mes, y todas las funciones (programacion, cola, publicacion cruzada, parametros especificos de YouTube) estan disponibles en todos los planes, incluido el gratuito. No se requiere tarjeta de credito para comenzar. Si necesitas mas volumen, los planes de pago escalan a precios accesibles. Comparado con herramientas como Hootsuite o Buffer, el enfoque basado en API te da mucha mas flexibilidad a un menor costo.

Empieza a publicar YouTube Shorts automáticamente hoy

Sube, programa y publica Shorts en YouTube, TikTok e Instagram con una sola llamada a la API. Configura tu cola y deja que el sistema se encargue del resto.

Sin tarjeta de crédito. 10 subidas gratuitas incluidas.