Consulte o ponto de extremidade oEmbed do Instagram para obter um HTML incorporado de uma publicação do Instagram e os metadados básicos para exibi-la em outro site ou app. Compatível com publicações de foto, vídeo, reel e feed.
Visite a Central de Ajuda do Instagram para saber como obter o código de incorporação de uma publicação ou perfil público do Instagram.
Este guia presume que você seja um desenvolvedor registrado da Meta e tenha criado um app da Meta.
Você precisará do seguinte:
ao recurso oEmbed Read – Requer
análise do app da MetaTodos os pontos de extremidade podem ser acessados por meio do host graph.facebook.com
.
Os limites de volume dependem do tipo de token de acesso que seu app inclui em cada solicitação.
Os apps que dependem de tokens de acesso do app podem fazer até 5 milhões de solicitações em 24 horas.
Os limites de volume do token de cliente são mais baixos do que os do token do app. Não revelamos o limite real, pois ele muda dependendo da atividade do app. Contudo, você pode supor que seu app não alcançará o limite a menos que ele apresente comportamento similar a um bot, como fazer milhares de solicitações em lote ou enviar milhares de solicitações por agente ou usuário.
É possível obter um HTML incorporado de forma programática ou no app do Instagram.
Para obter o HTML incorporado de uma publicação do Instagram de forma programática, envie uma solicitação para:
GET /instagram_oembed?url=<URL_OF_THE_POST>&access_token=<ACCESS_TOKEN>
Substitua <URL_OF_THE_POST>
pelo URL da publicação do Instagram que você deseja consultar e <ACCESS_TOKEN>
pelo token de acesso do cliente ou app ou transmita-o em um cabeçalho HTTP Authorization
.
Authorization: Bearer <ACCESS_TOKEN>
Caso esteja usando um token de acesso do cliente, combine esse token com o ID do app da Meta usando um símbolo de barra. Se isso não for feito, a solicitação resultará em falha.
Caso a solicitação seja bem-sucedida, a API responderá com um objeto JSON contendo o HTML incorporado da publicação e dados adicionais. O HTML incorporado será atribuído à propriedade html
.
Consulte a referência do oEmbed do Instagram para ver uma lista dos parâmetros da string de consulta que você pode incluir para aumentar a solicitação. Além disso, é possível incluir o parâmetro da string de consulta fields
para especificar os campos a serem retornados. Caso ele seja omitido, todos os campos padrão serão incluídos na resposta.
curl -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https://www.instagram.com/p/fA9uwTtkSN/&access_token=IGQVJ..."
curl -i -X GET \
--header "Authorization: Bearer 96481..." \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN"
Alguns valores foram reduzidos com reticências (...
) para facilitar a leitura.
{ "version": "1.0", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/", "type": "rich", "width": 658, "html": "<blockquote class=\"instagram-media\" data-instgrm-ca...", "thumbnail_width": 640, "thumbnail_height": 640 }
O parâmetro da string de consulta url
aceita os seguintes formatos de URL:
https://www.instagram.com/p/{media-shortcode}/
https://www.instagram.com/tv/{media-shortcode}/
https://www.instagram.com/{username}/guide/{slug}/{guide_id}
O HTML incorporado contém uma referência à biblioteca de JavaScript embed.js do Instagram. Quando carregar, a biblioteca buscará o HTML da publicação na página e gerará a publicação renderizada. Se você quiser carregar a biblioteca separadamente, inclua o parâmetro da string de consulta omitscript=true
na solicitação. Para inicializar manualmente o HTML incorporado, chame a função instgrm.Embeds.process()
depois de carregar a biblioteca.
A publicação incorporada é responsiva e se adapta ao tamanho do contêiner. Isso significa que a altura variará dependendo da largura do contêiner e do comprimento da legenda. Você pode definir a largura máxima incluindo o parâmetro da string de consulta maxwidth
na solicitação.
Recomendamos que você renderize todo o HTML incorporado da publicação sempre que possível. Se você não conseguir fazer isso, pode obter a URL da imagem de miniatura de uma publicação e renderizá-la. No entanto, se fizer isso, você precisará informar a atribuição de modo claro próxima à imagem, incluindo a atribuição ao autor original e ao Instagram, além de um link para a publicação do Instagram que está consultando.
Para obter o URL da miniatura e a atribuição de uma publicação, envie uma solicitação para:
GET /instagram_oembed ?url=<URL_OF_THE_POST> &maxwidth=<MAX_WIDTH> &fields=thumbnail_url,author_name,provider_name,provider_url &access_token=<ACCESS_TOKEN>
Substitua <URL_OF_THE_POST>
pelo URL da publicação do Instagram que deseja consultar, <MAX_WIDTH>
pelo tamanho máximo da miniatura que deseja renderizar e <ACCESS_TOKEN>
pelo token de acesso do cliente ou app.
curl -i -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN&maxwidth=320&fields=thumbnail_url%2Cauthor_name%2Cprovider_name%2Cprovider_url&access_token=96481..."
Alguns valores foram reduzidos com reticências (...
) para facilitar a leitura.
{ "thumbnail_url": "https://scontent.cdninstagram.com/v/t51.288...", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/" }
Quando você envia seu app para análise, no campo do formulário Diga-nos por qual motivo você está solicitando Oembed Read > Forneça uma URL onde possamos testar o Oembed Read, use o ponto de extremidade do oEmbed do Instagram para obter o HTML incorporado para qualquer publicação aberta nas páginas do Página do Facebook ou Instagram oficiais. Depois, adicione o HTML incorporado retornado ao local onde o conteúdo do oEmbed será exibido e insira o URL dessa página no campo de formulário.
Depois de receber a aprovação para o recurso oEmbed Read, você poderá incorporar páginas, publicações ou vídeos usando os respectivos URLs.