Skip to content

Instantly share code, notes, and snippets.

@ojvribeiro
Last active January 18, 2024 02:08
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ojvribeiro/422e71a281ad13353cd8514522dcb326 to your computer and use it in GitHub Desktop.
Save ojvribeiro/422e71a281ad13353cd8514522dcb326 to your computer and use it in GitHub Desktop.
Instagram API - Autorização e Dados do usuário

Crie uma aplicação no Instagram

Siga os passos desse tutorial para criar sua aplicação. Ignore a parte de criar um ACCESS TOKEN, por enquanto.

Fazendo a autorização

Ao clicar no seu botão de "Login com o Instagram", direcione seu usuário para a Página de Autorização do Instagram, alterando as partes em maiúsculo: https://api.instagram.com/oauth/authorize/?client_id=CLIENT_ID&redirect_uri=REDIRECT_URI&response_type=token

Essas informações estão na página Manage Clients, se você criou sua aplicação.

Após o usuário autorizar ele será redirecionado para seu app com um fragmento (hash) access_token e seu valor ao final da URL. Pegue o valor desse hash com a função do JavaScript location.hash.substr(1); e guarde em uma variável.

Depois disso, basta usar o jQuery Ajax para conseguir os dados do usuário:

let token = TOKEN_GUARDADO;

$.ajax({
  url: 'https://api.instagram.com/v1/users/self/?access_token=' + token,
  type: 'GET',
  success: function(data){
    console.log(data);
  },
  
  error: function(data){
    console.log(data);
  }
});

Isso irá retornar um JSON mais ou menos assim:

{
  "data": {
    "id": "ID_DO_USUARIO",
    "username": "NOME_DO_USUARIO",
    "profile_picture": "URL_DA_FOTO_DE_PERFIL",
    "full_name": "NOME_DE_EXIBICAO",
    "bio": "BIO",
    "website": "SITE",
    "is_business": false,
    "counts": {
      "media": 19,
      "follows": 512,
      "followed_by": 855
    }
  },
  "meta": {
    "code": 200
  }
}

Pegando as últimas 20 postagens

Para conseguir as 20 últimas postagens, basta usar a URL (endpoint) https://api.instagram.com/v1/users/self/media/recent?access_token=TOKEN_GUARDADO.

Espero ter ajudado.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment