Guía · APIs de redes sociales para desarrolladores

Clave API de Instagram: lo que necesitas de verdad

Por Antoine Blanco··7 min de lectura

No hay clave de API de Instagram. Meta emite un app ID y un app secret, y cada llamada se autoriza con un token de acceso ligado a una cuenta profesional, obtenido por OAuth y válido 60 días. El término de búsqueda está mal, no tu forma de entenderlo. Todo lo de abajo se leyó en la documentación para desarrolladores de Meta el 13 de noviembre de 2026.

Por qué no existe lo que estás buscando

La confusión es razonable, porque otras plataformas sí funcionan así. Una clave API de YouTube es una cadena que pegas en una URL para leer datos públicos. Pinterest, Google Maps y casi todas las API de solo lectura te dan algo parecido.

Instagram nunca lo hace. No hay ningún endpoint que devuelva datos públicos de Instagram a cambio de una cadena a nivel de proyecto. Cada endpoint de Instagram actúa en nombre de una cuenta concreta que ha dado permiso a tu app, lo que significa un token de usuario, no una clave.

Modelo de clave de API Instagram
Qué te identifica una cadena a nivel de proyecto un app ID más un token de acceso de usuario
Quién consiente nadie el dueño de la cuenta, en una pantalla de OAuth
Lee datos públicos sí no existe ese endpoint
Caduca no 60 días, renovable
Tipo de cuenta necesario ninguno Cuenta profesional de Instagram, de empresa o de creador

Así que el resto de esta página va de los tres objetos que sustituyen a la clave: una app, una cuenta profesional y un token.

Lo que necesitas antes de que nada funcione

Una cuenta profesional. De empresa o de creador. Un perfil personal de Instagram queda fuera del alcance de la API por completo, en cualquier configuración. Cambiarlo es gratis y lleva un minuto en la app de Instagram, y es el motivo número uno por el que una integración correcta no devuelve nada.

Una app de Meta. Creada en el Meta App Dashboard, con el producto Instagram añadido. Ahí viven de verdad las dos credenciales que la gente llama clave: el Instagram App ID, que va en las peticiones como client_id, y el Instagram App Secret. Los dos están en App Dashboard, Instagram, API setup with Instagram login, y luego Business login settings.

Los scopes correctos. Cuatro valores, y los nombres antiguos business_* están obsoletos:

Cómo conseguir un token de acceso de la API de Instagram

Cuatro llamadas. La documentación de Business Login for Instagram es la fuente de cada una.

1. Envía al usuario a la ventana de autorización.

https://www.instagram.com/oauth/authorize
  ?client_id=INSTAGRAM_APP_ID
  &redirect_uri=https://yourapp.com/auth
  &response_type=code
  &scope=instagram_business_basic,instagram_business_content_publish
  &state=anti_csrf_value

El redirect_uri tiene que coincidir exactamente con uno registrado en el dashboard. Si el usuario acepta, vuelve con un code.

2. Cambia el código por un token de corta duración. El código vale una hora y se usa una sola vez. Llega con un #_ final que quitas antes de enviarlo.

curl -X POST https://api.instagram.com/oauth/access_token \
  -F client_id=INSTAGRAM_APP_ID \
  -F client_secret=INSTAGRAM_APP_SECRET \
  -F grant_type=authorization_code \
  -F redirect_uri=https://yourapp.com/auth \
  -F code=AQBx...

Recibes un access_token, el identificador user_id propio de Instagram y los permissions concedidos. Ese token dura una hora, lo justo para hacer el paso 3 y nada más.

3. Cámbialo por un token de larga duración. Solo desde el servidor, porque la llamada lleva tu app secret.

curl -G https://graph.instagram.com/access_token \
  -d grant_type=ig_exchange_token \
  -d client_secret=INSTAGRAM_APP_SECRET \
  -d access_token=SHORT_LIVED_TOKEN

La respuesta trae expires_in: 5183944, es decir 60 días.

4. Renuévalo antes del día 60.

curl -G https://graph.instagram.com/refresh_access_token \
  -d grant_type=ig_refresh_token \
  -d access_token=LONG_LIVED_TOKEN

Tres condiciones, todas documentadas y todas fáciles de incumplir: el token tiene que tener al menos 24 horas, no puede haber caducado aún, y el usuario tiene que haber concedido instagram_business_basic. Si se te pasa la ventana no hay vuelta atrás. Un token de larga duración caducado ya no se puede renovar, y el usuario tiene que pasar otra vez por la pantalla de autorización.

Instagram Login o Facebook Login: elige la configuración primero

Meta ofrece dos formas de conectar, y no son intercambiables. Elegir la equivocada significa rehacer el trabajo de OAuth.

Instagram API with Instagram Login API de Instagram con Facebook Login
Requiere una Página de Facebook no sí, ligada a la cuenta
El usuario entra con Credenciales de Instagram Credenciales de Facebook, con permisos de admin de la Página
Publicación de contenido sí sí
Moderación de comentarios sí sí
Insights sí sí
Menciones sí sí
La mensajería sí, de forma nativa por la Messenger Platform
Búsqueda de hashtags no sí
Etiquetado de productos no sí
Anuncios de colaboración no sí

Para una herramienta de creadores, Instagram Login es el camino más ligero: sin Página, sin comprobación de permisos de admin y con mensajería sin añadir la Messenger Platform. Coge Facebook Login cuando necesites búsqueda por hashtag, etiquetado de productos o anuncios de colaboración, que no existen en el otro lado. La vida de los tokens es idéntica en ambos casos: códigos de una hora, tokens de corta duración de una hora, tokens de larga duración de 60 días.

Lo que ninguna de las dos te da es el antiguo camino de solo lectura. La Basic Display API ya no está, y el sustituto para ese uso está cubierto en la alternativa a la Instagram Basic Display API. El detalle endpoint por endpoint de lo que queda está en la Instagram Graph API en 2026.

La parte que se rompe tres meses después

Conseguir un token es una tarde. Mantener los tokens vivos es el trabajo de verdad, y ahí es donde se pudren las integraciones pequeñas.

El reloj de los 60 días corre por cuenta. Con una cuenta puedes renovarlo a mano y acordarte. Con doce necesitas un job programado que renueve cada token mucho antes de que caduque, guarde el nuevo y te avise cuando una renovación falle, porque el fallo es silencioso: el token viejo sigue funcionando hasta el día en que deja de hacerlo.

Otras tres formas en que el mismo sistema muerde, ninguna por culpa de tu código:

El mismo patrón se repite en cada red con un reloj distinto y un fallo silencioso distinto, y de eso va tokens de acceso a redes sociales.

Cuándo dejar de construir esto tú mismo

Si Instagram es la única red que tocas, hazlo tú. Una app, un flujo OAuth y un job de renovación es una cantidad conocida, y mantienes el control total de los scopes.

La cuenta cambia con la segunda red. Cada una suma su app, su revisión, su vida de token y su motivo para desconectarse de madrugada. Eso es lo que hace PlugKit en su lugar: Instagram, Facebook, LinkedIn, TikTok, YouTube, X, WhatsApp y Telegram detrás de una API REST y un servidor MCP alojado en https://api.plugkit.co/mcp, con el OAuth, la renovación y la reconexión resueltos. Son 49 $ al mes por 5 cuentas conectadas, cancelas cuando quieras, o 97 $ por 30. Siete días gratis, tarjeta al registrarte y nada cobrado antes del día 7.

No quita la revisión de app de Meta, y nada puede quitarla cuando publicas bajo tu propia app. Lo que quita es el trabajo de credenciales por plataforma y los jobs de renovación. La comparación entre proveedores está en la guía de las API de redes sociales, y si quien publica es un agente y no un script, el servidor MCP de Instagram es el camino más corto.

Preguntas frecuentes

¿Instagram tiene clave de API?

No. Meta emite un Instagram App ID y un Instagram App Secret para tu app, y cada petición se autoriza con un token de acceso de usuario obtenido por OAuth. No existe ninguna clave a nivel de proyecto que lea datos públicos de Instagram, porque no existe ese endpoint.

¿Cómo consigo un token de acceso de la API de Instagram?

Manda al dueño de la cuenta a https://www.instagram.com/oauth/authorize, intercambia el código recibido en https://api.instagram.com/oauth/access_token por un token de una hora, y luego cambia ese en https://graph.instagram.com/access_token con grant_type=ig_exchange_token por un token de 60 días. La cuenta tiene que ser profesional.

¿Cuánto dura un token de acceso de Instagram?

Los códigos de autorización y los tokens de corta duración duran una hora. Los de larga duración duran 60 días y se pueden renovar cuando tienen al menos 24 horas. Un token de larga duración caducado no se puede renovar, así que el usuario tiene que volver a autorizar.

¿Puedo usar la API de Instagram con una cuenta personal?

No. La API solo llega a cuentas profesionales, de empresa o de creador. Pasar una cuenta a profesional es gratis y lleva un minuto en la app de Instagram, y hay que hacerlo antes del flujo OAuth, no después.

¿Necesito una Página de Facebook para la API de Instagram?

Solo con la configuración de Facebook Login. La API de Instagram con Instagram Login funciona sin Página y cubre publicación, comentarios, insights, menciones y mensajería. Necesitas la vía ligada a una Página para la búsqueda por hashtag, el etiquetado de productos y los anuncios de colaboración.

AB
Antoine BlancoFundador de PlugKit. Gestiona sus propias cuentas de Instagram, YouTube y X a través de la API y del servidor MCP que se describen aquí.

Un solo plug para cada plataforma que toca tu agente

49 $ al mes por 5 cuentas conectadas, cancela cuando quieras. Todas las funciones en todos los planes.

Consigue tu clave de API →
Español ▾