Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Link to Instagram profile with user ID

I want to link to a profile/user account on Instagram. I have the user ID, but the I can't find the answer in the developer API documentation. I've tried instagram.com/userID and instagram.com/users/userID but these aren't working. Simple question: I have just a single <a> tag and I want to know what goes in the href to take the user to a specific instagram profile. Or possibly a window.location in javascript.

Or if there's a way to get the username from the ID, I suppose I could also do it in that round-a-bout way...

like image 413
smilebomb Avatar asked Jul 16 '13 17:07

smilebomb


People also ask

How do I get my Instagram profile link?

Go to instagram.com/username. For example, if the username is "johnsmith," type in instagram.com/johnsmith as the URL. Click the post you want to save and copy the link at the top of your browser.

Where is the URL on the Instagram app?

Go to the “Instagram Profile” you want to grab the URL from, then tap on the “vertical ellipsis” (three vertical dots) in the top-right section to open the menu. Select “Copy profile URL.” The screen displays “Link copied” over the profile page.


2 Answers

I am not aware of a solution, that makes it work as a simple link.

You will need to use the Instagram API and sign up your application so that you have a Client-ID.

Next, you will need to do the following request as HTTP GET:

https://api.instagram.com/v1/users/userID?client_id=YourClientID

This will return a JSON-Result, which will contain the username inside the data section.

Now you can use http://instagram.com/username as your link.

like image 172
Tim Bodeit Avatar answered Sep 20 '22 08:09

Tim Bodeit


try

async function insta(uid) {
  let api = `https://i.instagram.com/api/v1/users/${uid}/info/`
  let info = await (await fetch(api)).json();
  return `https://www.instagram.com/${info.user.username}`;
}

async function go() {
  let url = await insta(userId.value);
  link.innerText = url;
}
Type instagram user id:
<input id="userId" value=182805585 />
<button onclick="go()">Find username</button><br>
<pre id="link"></pre>
UPDATE

According this starting form 03.12.2019 above solution stops works and returns only

{“message”: “useragent mismatch”, “status”: “fail”}

instead you can try to send request GET

https://i.instagram.com/api/v1/users/1791879548/info/

with following user-agent header:

Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 105.0.0.11.118 (iPhone11,8; iOS 12_3_1; en_US; en-US; scale=2.00; 828x1792; 165586599)
like image 33
Kamil Kiełczewski Avatar answered Sep 18 '22 08:09

Kamil Kiełczewski