API de Reels de Instagram
Obtén los Reels que ha publicado una cuenta por username, cada uno con play_count, duration_sec, like_count, comment_count y la música usada, por $1.19 por cada 1000 llamadas.
Instagram Reels lista los Reels que ha publicado una cuenta pública, a partir de su username, y devuelve de cada uno el texto que lo acompaña, la duración en segundos en duration_sec, las reproducciones en play_count, los me gusta y comentarios, la fecha, la ubicación, los hashtags, la imagen de portada, el enlace al video y la música. Responde a qué videos cortos produce una cuenta y qué resultado obtienen: lo usan equipos de marketing de influencers para evaluar cuentas, equipos de redes sociales para comparar la producción de video de la competencia e investigadores que estudian el formato corto.
Envía el nombre de usuario sin @ y sin la URL del perfil, por ejemplo nasa. Compara play_count con like_count y comment_count para detectar los Reels que lograron alcance e interacción a la vez. Esta capacidad no devuelve transcripciones de subtítulos, comentarios destacados ni el número de seguidores del autor. Un contador en null significa que Instagram no publicó la cifra, no que sea cero.
- Hasta 100 Reels por llamada
- Las filas llegan en la misma respuesta
- Sin iniciar sesión en Instagram
Salud de la API
- Salud 24 h
- 100 %
- Tiempo medio 24 h
- 48.56 s
- Saludable / normal
- Disponible
- Limitada
- Casi sin servicio
Últimas 24 horas
Últimos 30 días
1Solicitud
POST /api/v1/social { "platform": "instagram", "action": "reels", "params": { "username": "nasa" } }2Respuesta JSON
{ "results": [ { "author_username": "", "post_id": "DfF3eqGSKKc", "text": "More power loading. 🔋\n\nToday, NASA astronaut Anil Menon and CSA (Canadian Space Agency) astronaut Joshua Kutryk conducted a spacewalk to install the 7th of 8 new roll out solar arrays. The final new array is slated to be installed during the Nov. 5 spacewalk, increasing the stati…", "media_type": "video" }, … ], "count": 30 }3Filas
author_username post_id text media_type DfF3eqGSKKc More power loading. 🔋 Today, NASA astronaut Anil Menon and CSA (Canadian Space Agency) astronaut Joshua Kutryk conducted a spacewalk to install the 7th of 8 new roll out solar arrays. The final new array is slated to be installed during the Nov. 5 spacewalk, increasing the stati… video De7XCa_TJ4h This is how @nasa does game day. Roll Tide! 🚀🏈 video 4CSV
instagram-reels-sample.csv post_id,url,text,media_type,like_count,comment_count,author_username,author_name,posted_at,location,id,image_url,video_url,author_id,width,height,hashtags,play_count,duration_sec,duration_seconds,music,platform
username y un limit opcional. La respuesta JSON trae los Reels de la cuenta con play_count, duration_sec y music, y todo pasa a filas de tabla y a un CSV.Qué datos obtienes
La tabla muestra filas de una llamada real con nasa, capturada el 31 de octubre de 2026, 08:50 (UTC), que devolvió 30 filas. Las barras grises marcan datos personales eliminados (••• en el CSV). En tus llamadas recibes estos campos según la tabla de campos.
| post_id | url | text | media_type | like_count | comment_count | author_username | author_name | posted_at | location | id | image_url | video_url | author_id | width | height | hashtags | play_count | duration_sec | duration_seconds | music | platform |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DfF3eqGSKKc | https://www.instagram.com/reel/DfF3eqGSKKc/ | More power loading. 🔋 Today, NASA astronaut Anil Menon and CSA (Canadian Space Agency) astronaut Joshua Kutryk conducted a spacewalk to install the 7th of 8 new roll out solar arrays. The final new array is slated to be installed during the Nov. 5 spacewalk, increasing the stati… | video | 11609 | 129 | 2026-10-29T20:35:35+00:00 | null | https://scontent-sof1-2.cdninstagram.com/v/t51.82787-15/865204930_18640535563026724_3353517023594775034_n.jpg?stp=dst-jpg_e15_s640x640_tt6&_nc_cat=1&ig_cache_key=NDAxODg2MjI0MTg0MzAyODYzNjE4NjQwNTM1NTYwMDI2NzI0.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNMSVBTLnhwa… | https://scontent-sof1-2.cdninstagram.com/o1/v/t2/f2/m86/AQMgO65IBSO4D1Fg1v8qWRLjCR7N-LaX4H_sPQeyoyjFQE149o094RWHdy1qn9GBy1VHAND2Io7UoTGpUBgIXE-YSbD4UnaCrO694xk.mp4?_nc_cat=102&_nc_sid=5e9851&_nc_ht=scontent-sof1-2.cdninstagram.com&_nc_ohc=koWnhp-eBvIQ7kNvwFJyYpR&efg=eyJ2ZW5jb2RlX… | 1080 | 1920 | null | 2043930 | 41.375999450683594 | 41.375999450683594 | {"artist":"nasajohnson","title":"Original audio"} | |||||
| De7XCa_TJ4h | https://www.instagram.com/reel/De7XCa_TJ4h/ | This is how @nasa does game day. Roll Tide! 🚀🏈 | video | 52012 | 235 | 2026-10-25T18:35:11+00:00 | Bryant-Denny Stadium | https://scontent-sof1-2.cdninstagram.com/v/t51.82787-15/858088880_1909652077075572_3321833479248057878_n.jpg?stp=dst-jpg_e15_s640x640_tt6&_nc_cat=101&ig_cache_key=NDAxNTkwNDgxNDIxODkxMTI2NTE5MDk2NTIwNzM3NDIyMzk%3D.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNMSVBTLn… | https://scontent-sof1-2.cdninstagram.com/o1/v/t2/f2/m86/AQO_XE-Eozfv9EhJgpBw8CpgqEydxrCcLTTmdJ4OmJL4u8TmjEREW4NyjX7EoxhsUiVfVbZseRJAIb1F9nUfjAsGTOK4bYFiS-v5fw4.mp4?_nc_cat=105&_nc_sid=5e9851&_nc_ht=scontent-sof1-2.cdninstagram.com&_nc_ohc=47tcWctX0mAQ7kNvwFwIIq6&efg=eyJ2ZW5jb2RlX… | 1916 | 1078 | null | 4474276 | 61.507999420166016 | 61.507999420166016 | {"artist":"nasaadmin","title":"Original audio"} |
Casos de uso
Evaluar creadores
Lee
play_countylike_countde los Reels de una cuenta candidata para juzgar su alcance e interacción.Comparar video de la competencia
Descarga los Reels de un competidor y usa
duration_secytextpara ver cuánto duran y qué escriben.Reels con más interacción
Compara
play_countconcomment_countpara elegir los Reels con muchas reproducciones y comentarios.Contar la música elegida
Lee el artista y el título en
musicpara contar qué temas usa más una cuenta.
Instagram Graph API frente a EveryInfra
Comparamos la Graph API oficial de Instagram y reels de EveryInfra en tres puntos: reproducciones, cómo se reconocen los Reels y el acceso.
| Aspecto | Instagram Graph API | EveryInfra |
|---|---|---|
| Reproducciones | Campo view_count: "View count for Instagram Reels, which includes both paid and organic metrics." | Cada fila trae play_count, que puedes leer junto a like_count y comment_count. |
| Reconocer Reels | Campo media_product_type: "Surface where the media is published. Can be AD, FEED, STORY or REELS. Available for Instagram API with Facebook Login only." | username devuelve los Reels de esa cuenta, y cada fila trae duration_sec y music. |
| Acceso necesario | "Note that a permission only allows access to data created by the app user who granted the permission." | Una clave de API de EveryInfra en la cabecera Authorization: Bearer. No hace falta iniciar sesión en Instagram ni un token de acceso de Instagram. |
Las citas proceden de la documentación para desarrolladores de Meta, comprobadas el 2026-11-09. Fuentes oficiales: IG Media (actualizada el 2026-10-29) · Instagram Platform overview (actualizada el 2026-10-29)
Límites y detalles a tener en cuenta
limites un entero de 1 a 100 y vale 30 por defecto; un valor mayor devuelve 422 antes de cobrar nada.- No hay parámetro de paginación. Una llamada devuelve como máximo 100 filas y puede devolver menos que
limit. usernamees el nombre de la cuenta sin @, o la URL completa del perfil.- No se devuelven transcripciones de subtítulos, comentarios destacados ni el número de seguidores del autor.
play_count,like_countycomment_countennullsignifican que no se publican; no es 0.duration_secva en segundos.musicno aparece cuando el Reel no tiene música.
Precios
Pagas $0.001194 por llamada, no por fila, y una llamada lee hasta 100 Reels. Las llamadas fallidas y los resultados vacíos no se cobran.
| Llamadas | Costo |
|---|---|
| 10,000 | $11.94 |
| 100,000 | $119.44 |
| 1,000,000 | $1,194.44 |
El total se calcula con el precio de lista por llamada.
Ejemplos de código
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "instagram",
"action": "reels",
"params": {
"username": "nasa"
}
}'Definición OpenAPI (JSON)Los ejemplos leen la clave de la variable de entorno EVERYINFRA_API_KEY; el código copiado nunca contiene tu clave.
Referencia de API
Aquí tienes los parámetros, campos de respuesta, errores y facturación de reels; copia la página o ábrela en Markdown para dársela a un asistente de IA.
Prompt para IA
#Ayúdame a escribir un script de recopilación de datos con el endpoint de EveryInfra Instagram: Reels (instagram/reels).
Cómo funciona el endpoint:
- Solicitud: POST https://api.everyinfra.com/api/v1/social con la cabecera Authorization: Bearer <clave API>. Lee la clave de la variable de entorno EVERYINFRA_API_KEY y no la escribas en el código.
- En el cuerpo de la solicitud, pon platform en instagram y action en reels, y los parámetros dentro de params.
- Parámetros obligatorios:
- username: Handle de la cuenta de Instagram, se recomienda sin el @ o la URL completa del perfil. profile/persona/user_posts/reels consultan los datos de la cuenta.
- Parámetros opcionales:
- limit: Número máximo de filas que devuelve esta llamada, un entero de 1 a 100. Si no lo envías, se usa el valor predeterminado, y una llamada puede devolver menos filas. (por defecto: 30)
- Devuelve una lista de registros. Campos principales de cada registro: post_id, url, text, media_type, like_count, comment_count, author_username, author_name, posted_at, location, id, image_url; 21 campos en total, lista completa en https://api.everyinfra.com/api/v1/social/catalog?platform=instagram.
- Cuerpo de solicitud de ejemplo:
{
"platform": "instagram",
"action": "reels",
"params": {
"username": "nasa"
}
}
- Precio: $1.19 por 1.000 solicitudes; los resultados fallidos y vacíos no se cobran.
- Para decenas o cientos de objetivos, añade "mode": "async" al cuerpo: recibes un job_id al instante y consultas GET https://api.everyinfra.com/api/v1/jobs/{job_id} para obtener el resultado.
- Ante un 422, corrige la solicitud con los nombres de parámetros y los valores admitidos que sugiere el error; ante un 429 o un 503, espera lo que indique Retry-After y vuelve a intentarlo.
Antes de escribir código, pregúntame qué objetivos necesito, cuántos, qué campos y en qué formato quiero el resultado; luego confirma conmigo el plan y el coste aproximado.Parámetros de la solicitud
#| Nombre | Ubicación | Tipo | Obligatorio | Por defecto | Descripción |
|---|---|---|---|---|---|
Authorization | header | string | Sí | - | Bearer seguido de tu clave de API. Créala en la consola; nunca la pongas en una URL ni en un repositorio de código. |
platform | body | string | Sí | instagram | Identificador de la plataforma, valor fijo. |
action | body | string | Sí | reels | Identificador de la capacidad, valor fijo. |
username | body.params | string | Sí | - | Handle de la cuenta de Instagram, se recomienda sin el @ o la URL completa del perfil. profile/persona/user_posts/reels consultan los datos de la cuenta; followers solo consulta la cantidad de seguidores, followers_list/following_list consultan la lista de cuentas de seguidores/seguidos. |
limit | body.params | integer (1–100) | No | 30 | Número máximo de filas que devuelve esta llamada, un entero de 1 a 100. Si no lo envías, se usa el valor predeterminado, y una llamada puede devolver menos filas. Los valores mayores devuelven 422 antes de cualquier cobro. |
Ejemplo de respuesta
#{ "id": "req_…", "platform": "instagram", "action": "reels", "results": [ { "post_id": "DfF3eqGSKKc", "url": "https://www.instagram.com/reel/DfF3eqGSKKc/", "text": "More power loading. 🔋\n\nToday, NASA astronaut Anil Menon and CSA (Canadian Space Agency) astronaut Joshua Kutryk conducted a spacewalk to install the 7th of 8 new roll out solar arrays. The final new array is slated to be installed during the Nov. 5 spacewalk, increasing the stati…", "media_type": "video", "like_count": 11609, "comment_count": 129, "author_username": "•••", "author_name": "•••", "posted_at": "2026-10-29T20:35:35+00:00", "id": "•••", "image_url": "https://scontent-sof1-2.cdninstagram.com/v/t51.82787-15/865204930_18640535563026724_3353517023594775034_n.jpg?stp=dst-jpg_e15_s640x640_tt6&_nc_cat=1&ig_cache_key=NDAxODg2MjI0MTg0MzAyODYzNjE4NjQwNTM1NTYwMDI2NzI0.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNMSVBTLnhwa…", "video_url": "https://scontent-sof1-2.cdninstagram.com/o1/v/t2/f2/m86/AQMgO65IBSO4D1Fg1v8qWRLjCR7N-LaX4H_sPQeyoyjFQE149o094RWHdy1qn9GBy1VHAND2Io7UoTGpUBgIXE-YSbD4UnaCrO694xk.mp4?_nc_cat=102&_nc_sid=5e9851&_nc_ht=scontent-sof1-2.cdninstagram.com&_nc_ohc=koWnhp-eBvIQ7kNvwFJyYpR&efg=eyJ2ZW5jb2RlX…", "author_id": "•••", "width": 1080, "height": 1920, "play_count": 2043930, "duration_sec": 41.375999450683594, "music": { "artist": "nasajohnson", "title": "Original audio" }, "platform": "instagram", "duration_seconds": 41.375999450683594 }, { "post_id": "De7XCa_TJ4h", "url": "https://www.instagram.com/reel/De7XCa_TJ4h/", "text": "This is how @nasa does game day. Roll Tide! 🚀🏈", "media_type": "video", "like_count": 52012, "comment_count": 235, "author_username": "•••", "author_name": "•••", "posted_at": "2026-10-25T18:35:11+00:00", "location": "Bryant-Denny Stadium", "id": "•••", "image_url": "https://scontent-sof1-2.cdninstagram.com/v/t51.82787-15/858088880_1909652077075572_3321833479248057878_n.jpg?stp=dst-jpg_e15_s640x640_tt6&_nc_cat=101&ig_cache_key=NDAxNTkwNDgxNDIxODkxMTI2NTE5MDk2NTIwNzM3NDIyMzk%3D.3-ccb7-5&ccb=7-5&_nc_sid=58cdad&efg=eyJ2ZW5jb2RlX3RhZyI6IkNMSVBTLn…", "video_url": "https://scontent-sof1-2.cdninstagram.com/o1/v/t2/f2/m86/AQO_XE-Eozfv9EhJgpBw8CpgqEydxrCcLTTmdJ4OmJL4u8TmjEREW4NyjX7EoxhsUiVfVbZseRJAIb1F9nUfjAsGTOK4bYFiS-v5fw4.mp4?_nc_cat=105&_nc_sid=5e9851&_nc_ht=scontent-sof1-2.cdninstagram.com&_nc_ohc=47tcWctX0mAQ7kNvwFwIIq6&efg=eyJ2ZW5jb2RlX…", "author_id": "•••", "width": 1916, "height": 1078, "play_count": 4474276, "duration_sec": 61.507999420166016, "music": { "artist": "nasaadmin", "title": "Original audio" }, "platform": "instagram", "duration_seconds": 61.507999420166016 } ], "count": 30, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Campos de la respuesta
#Los datos están en results. La tabla lista los campos que puede tener cada registro; los valores que la plataforma no muestra nunca se inventan.
| Campo | Significado |
|---|---|
post_id | Conserva el significado de la plataforma |
url | Enlace al registro en la plataforma. |
text | Texto del contenido sin HTML, completo y sin recortes (en algunas plataformas los resultados de listado solo traen un extracto; lo indican las notas de campos de la plataforma). |
media_type | Conserva el significado de la plataforma |
like_count | Me gusta. null significa que la plataforma o esta capacidad no lo publica; no es 0. |
comment_count | Comentarios. null significa no publicado, no 0. |
author_username | Nombre de usuario del autor (@usuario), normalmente utilizable en URL. |
author_name | Nombre visible del autor. |
posted_at | Fecha de publicación en ISO 8601, UTC (por ejemplo 2026-08-07T12:34:56+00:00). Las cadenas no estándar de la plataforma se transmiten tal cual, así que conviene analizarlas con tolerancia. null significa que la plataforma no la publica. |
location | Descripción de la ubicación tal como la da la plataforma; el formato varía. |
id | Identificador único del registro en la plataforma. Solo es único dentro de una plataforma; puede repetirse entre plataformas. |
image_url | Enlace de imagen. Las capacidades con varias imágenes pueden devolver una lista image_urls. |
video_url | Conserva el significado de la plataforma |
author_id | Identificador único del autor en la plataforma. |
width | Conserva el significado de la plataforma |
height | Conserva el significado de la plataforma |
hashtags | Hashtags del texto, en orden de aparición; no aparece si no hay ninguno. |
play_count | Conserva el significado de la plataforma |
duration_sec | Conserva el significado de la plataforma |
duration_seconds | Duración en segundos. null en contenido que no es video ni audio. |
music | Conserva el significado de la plataforma |
platform | Identificador de la plataforma, igual que platform en la solicitud (por ejemplo xiaohongshu, tiktok). |
Errores y facturación
#- 401
- Falta la clave o no es válida.
- 402
- Saldo insuficiente. Recarga primero.
- 422
- Nombre o valor de parámetro incorrecto. Corrígelo según las opciones indicadas en el error. Sin cargo.
- 429
- Se alcanzó el límite de solicitudes por minuto. Espera el tiempo indicado en Retry-After y vuelve a intentarlo.
- 503
- No se pudo completar. El cargo retenido vuelve a tu saldo. Si el resultado es incierto, compruébalo antes de reenviar.
- 200 vacío
- Sin datos. Sin cargo.
Preguntas frecuentes
¿Cómo obtengo los Reels de una cuenta por API?
Con una llamada a Instagram Reels que lleve el nombre de la cuenta en username, por ejemplo nasa. Cada Reel vuelve como una fila con post_id, url, el texto en text y los contadores. Para leer los comentarios de un Reel concreto, pasa su url a Instagram Comentarios, que acepta el enlace de una publicación o de un Reel.
¿Puedo obtener lo que se dice en un Reel?
No con esta capacidad: no devuelve transcripción de subtítulos. El texto que escribió el autor está en text y las etiquetas en hashtags, así que puedes buscar, contar o clasificar los Reels con ellos. Guárdalos junto a post_id y duration_sec para comparar textos entre Reels de distinta duración.
¿Qué contador indica cuántas veces se reprodujo un Reel?
play_count recoge las reproducciones del Reel, y esta capacidad no devuelve un contador de visualizaciones aparte. Úsalo de forma constante al comparar Reels y deja fuera las filas en las que venga en null: significa que la cifra no se publicó, no que nadie viera el video.
¿Qué datos devuelve la API de Reels de Instagram?
Para la cuenta de username devuelve sus Reels: text, play_count, duration_sec, like_count, music y el enlace del video video_url.
¿Cuántos Reels devuelve una llamada y cómo se pagina?
limit va de 1 a 100 y vale 30 por defecto. Una llamada devuelve como máximo 100 filas, puede que menos. No hay parámetro de paginación.
¿Cuánto cuesta?
Cuesta $0.001194 por llamada, o $1.19 por cada 1000 llamadas, por llamada y no por fila. Las llamadas fallidas y los resultados vacíos no se cobran.
¿Necesito iniciar sesión en Instagram?
No. Envías una clave de API de EveryInfra en la cabecera Authorization: Bearer. No hace falta iniciar sesión en Instagram ni un token de acceso de Instagram.
¿Qué diferencia hay entre reels y reels_search?
reels recibe el username de una cuenta y devuelve sus Reels, con music. reels_search recibe una keyword y devuelve los Reels de esa palabra, con is_verified pero sin music.
Capacidades de Instagram relacionadas
Con la misma clave puedes llamar a otras capacidades de Instagram, como los comentarios de un Reel o la búsqueda de Reels por palabra clave.
- Detalles de la publicación
post$0.56 por cada 1000 llamadasProcesa una o varias URL enurlsy devuelve publicaciones de Instagram con autor, texto, tipo de medio y métricas visibles. - Detalles
profile$0.56 por cada 1000 llamadasResuelve unusernamede Instagram y devuelve nombre, biografía, contadores y señales públicas de cuenta. - Análisis de la cuenta
persona$0.56 por cada 1000 llamadasConsulta medianteusernamelos mismos campos públicos queprofiley añade un objetopersonaescrito por IA con sector, nicho, autenticidad y resumen. - Publicaciones del usuario
user_posts$0.56 por cada 1000 llamadasObtiene publicaciones públicas delusername, con URL, texto, formato y contadores por pieza. - Descubrimiento de contenido
discover$0.56 por cada 1000 llamadasDescubre publicaciones porkeywordy permite elegirresults_type. - Comentarios
comments$0.79 por cada 1000 llamadasLee comentarios de laurlde una publicación, con autor, likes, respuestas y fecha cuando existen. - Contenido por hashtag
hashtag$0.56 por cada 1000 llamadasBusca contenido delhashtag, aceptando alias compatibles de etiqueta o palabra, y distingue posts de Reels medianteresults_type. - Seguidores
followers$0.56 por cada 1000 llamadasObtiene parausernamecontadores y señales de conexión agregadas. - Lista de seguidores
followers_list$0.56 por cada 1000 llamadasEnumera cuentas seguidoras delusernamecon relación y perfil público cuando están disponibles. - Lista de cuentas seguidas
following_list$0.56 por cada 1000 llamadasLista cuentas seguidas por elusername, conservando privacidad y verificación visibles. - Búsqueda de cuentas
user_search$4.81 por cada 1000 llamadasBusca cuentas de Instagram porkeyword, en el orden en que la búsqueda de Instagram las clasifica para esa palabra (rankdesde 1). - Búsqueda de Reels
reels_search$7.19 por cada 1000 llamadasBusca Reels de Instagram porkeyword, por ejemplo coffee. - Cuentas similares
similar_profiles$8.81 por cada 1000 llamadasLista las cuentas que Instagram sugiere como similares a unusername, por ejemplo nasa, ordenadas por seguidores (rankdesde 1). - Publicaciones etiquetadas
tagged_posts$7.44 por cada 1000 llamadasLista publicaciones públicas de otras cuentas que etiquetan a unusername(también vale la URL del perfil o el ID numérico). - Historias
stories$1.5 por cada 1000 llamadasDevuelve las historias que una cuenta de Instagram tiene activas ahora, a partir de su usuario. - Historias destacadas
highlights$1.6 por cada 1000 llamadasLista las historias destacadas de un perfil de Instagram. - Respuestas a comentarios
comment_replies$0.88 por cada 1000 llamadasLee las respuestas a un comentario de una publicación o Reel de Instagram, con el enlace de la publicación y eliddel comentario que devuelvecomments.