Instagram-URL-parser

Netwerk

Geanalyseerde URL
Soort
Gebruikersnaam
Korte code
Media-ID
Detail
Verwijderde parameters
Uitvoerformaat

Inleiding

De Toollect Instagram-URL-parser beantwoordt een kleine, regelmatige vraag: wat zit er werkelijk in deze Instagram-link, en wat kan ik veilig verwijderen voordat ik hem doorstuur? Plak elke Instagram-URL en de tool benoemt het type — post, Reel, IGTV, profiel, verhaal, gids, hashtag, locatie of direct bericht — en haalt vervolgens de gebruikersnaam, de korte code en de numerieke media-ID eruit, voordat hij de link herbouwt als een canonieke URL zonder tracking. Geen account, geen API-sleutel en nul netwerkverzoeken.

Het probleem dat hij verwijdert, is het achtervoegsel dat de app van Instagram op elke link plakt die hij produceert. Kopieer een link om naar een vriend te sturen en je krijgt ?igsh=… of ?igshid=… erachteraan — een deelvingerafdruk die markeert hoe de link is gekopieerd, vanaf welk apparaat en vanuit welke context. Plak je dezelfde link in een document, dan reizen de parameters mee en laten ze een spoor achter dat terugwijst naar de delegebeurtenis in plaats van naar de inhoud.

De tool draait volledig in je browser. Hij leest de URL met dezelfde routing die Instagram zelf gebruikt, classificeert de inhoud erachter, decodeert de korte code naar zijn numerieke media-ID met base-64url-rekenkunde, verzamelt de trackingparameters in een verwijderbare lijst en zet de canonieke link weer in elkaar — allemaal lokaal stringwerk, geen verzoek verlaat ooit de pagina.

Gebruikssituaties

Naast het voor de hand liggende — „deze link opschonen voordat ik hem verstuur" — past de parser in echte workflows.

Contentmakers en communitymanagers

Een link die via de deelknop van Instagram is gekopieerd, draagt igsh of igshid vanaf het moment dat je op kopiëren tikt. Makers die hun eigen post- en reellinks in bijschriften, bio's en artikelen plakken, krijgen een schone URL in plaats van een apparaatvingerafdruk — en de embedformaten vallen direct in een website of blogpost zonder het deeltrail.

Ontwikkelaars en websites

Het embedden van een post betekent meestal het met de hand schrijven van een iframe-src. De parser produceert de embed-URL voor het werkwoord dat je ontving — /p/{sc}/embed/, /reel/{sc}/embed/ of de variant met bijschrift — zodat er geen giswerk is over welk endpoint welk werkwoord bedient. Dezelfde workflow schaalt naar gegenereerde pagina's: voer een lijst korte codes in, kopieer schone embed-URL's eruit. Het decoderen van de media-ID is de brug naar API-exports en databases die op numerieke ID's draaien.

Gegevensanalyse en archivering

Journalisten, onderzoekers en analisten die met linklijsten werken, doen twee taken in één plakbeweging: de URL wordt opgesplitst in gestructureerde onderdelen (type, gebruiker, korte code, media-ID) voor de logregistratie, en de lijst van verwijderde parameters legt exact vast welke trackers elke link droeg. Batchwerk is een reeks plakbewegingen zonder wachten — parsen is onmiddellijk en lokaal, dus honderd links duren ongeveer even lang als honderd toetsaanslagen.

Privacybewust delen

De igsh-parameter markeert het apparaat en de context waaruit een link is gekopieerd — een deelvingerafdruk die met de URL meereist. De link vóór het doorsturen door de parser halen, verwijdert hem, zodat de ontvanger de inhoud krijgt, geen registratie van waar de link vandaan kwam.

Vóór de parsemachinerie een kaart van het terrein: elke Instagram-link bestaat uit dezelfde paar onderdelen, en de parser leest ze gewoon uit.

Neem een link zoals hij de app verlaat:

https://www.instagram.com/_window7/p/DS7w7fokujz/?igsh=cXdlbg%3D%3D

Onderdeel Waarde Betekenis
Schema https:// Het protocol; optioneel bij invoer, altijd aanwezig bij uitvoer
Host www.instagram.com Het www-subdomein is optioneel, en de begeleidende domeinen instagr.am en ig.me worden identiek geparsed
Route /_window7/p/DS7w7fokujz/ Het werkwoord (p) benoemt het inhoudstype; DS7w7fokujz is de korte code
Query ?igsh=cXdlbg%3D%3D De trackingstaart — deelvingerafdrukken toegevoegd bij het kopiëren

Het routewerkwoord

Het eerste padsegment na de host benoemt wat de link is, en de parser koppelt elk werkwoord aan een type:

Werkwoord Type
p/ Post
reel/, reels/ Reel
tv/ IGTV
{username}/p/, {username}/reel/, {username}/tv/ Hetzelfde medium — een link gekopieerd van een profielpagina, geen profiel zelf
stories/, guide/, explore/, direct/, s/ Verhaal, gids, tag/locatie/zoekopdracht, direct bericht, korte link

De korte code

Het laatste deel van een mediaroute is de korte code: een string van 11 karakters zoals DS7w7fokujz. Hij is niet willekeurig — Instagram schrijft de numerieke ID van het medium in base-64url, met een alfabet van 64 karakters (A–Z, a–z, 0–9, -, _). Elf karakters geven 64^11 ≈ 2^66 mogelijke waarden, ruimte voor elke media-ID die Instagram ooit zal uitgeven. De parser converteert in beide richtingen — korte code naar ID (DIPPWkUh7Rj3607169348072354915) en ID terug naar korte code — met BigInt-rekenkunde, omdat echte media-ID's het veilige integerbereik van JavaScript overschrijden.

De trackingstaart

Deelparameters — igsh, igshid, utm_* — hangen aan het einde van de querystring en vingerafdrukken hoe de link is gekopieerd. Ze kunnen veilig worden verwijderd, en ze verwijderen is de kerntaak van de parser; de mechaniek volgt hierna.

Hoe het werkt

Het opschonen van een Instagram-URL is een pijplijn van vier stappen, allemaal lokaal draaiend stringparsen.

  1. Routerkenning — de tool vergelijkt de URL met de routes die Instagram produceert. Media gebruiken korte-code-paden (p/, reel/, reels/, tv/), en dezelfde mediapaden verschijnen ook achter een gebruikersnaamvoorvoegsel ({username}/p/{sc}/, {username}/reel/{sc}/) op links die van een profielpagina zijn gekopieerd — de parser behandelt die als hetzelfde mediatype, niet als profielpagina's. Profielen gebruiken /username/, verhalen /stories/{username}/{id}/ en /stories/highlights/{id}/, gidsen /guide/{username}/{id}/, de tag- en locatiebrowsers leven onder /explore/tags/ en /explore/locations/, en directe berichten onder /direct/t/{id}/. Een kale korte code van 11 karakters wordt op zichzelf geaccepteerd, handig wanneer je ID's uit een API-antwoord haalt.
  2. Embednormalisatie — media-URL's komen soms binnen via /embed of /embed/captioned/. De tool behandelt die als aliassen van de post en vouwt ze terug naar het canonieke p/{shortcode}/-pad zonder een apart resultaattype, zodat een vanuit een embed-widget geplakte deling nog steeds als een gewone post wordt gelezen.
  3. Media-ID-decodering — de tool loopt de karakters van de korte code langs het base-64url-alfabet en vouwt ze met BigInt-precisie tot één geheel getal, teruggegeven als een exacte decimale string — geen afronding, geen verlies.
  4. Trackingverwijdering — de querystring wordt geïnspecteerd op deelparameters (igsh, igshid) en campagnetags (utm_*). Elke gevonden parameter wordt bij naam geregistreerd in de rij Verwijderde parameters en daarna verwijderd, zodat de schone URL alleen nog draagt wat de weergave beïnvloedt: niets anders.

Niets hiervan raakt het netwerk. De tool doet geen verzoeken — zelfs geen lichtgewicht oEmbed-sonde. De geplakte URL wordt volledig in de browser geparsed, opgesplitst en herbouwd, dus er valt niets te lekken, loggen of quoteren.

Wat telt als tracking

De deelstroom van Instagram hangt er een klein vingerafdrukje aan van hoe een link is gekopieerd. De tool kent ze allemaal:

  • igsh — deelhash; markeert het apparaat en de deelbron van de kopie en vervangt de oudere parameter igshid
  • igshid — de verouderde deelhash, die sommige oudere appversies nog steeds produceren
  • utm_source / utm_medium / utm_campaign / utm_term / utm_content — Google Analytics-campagnetags die het webdelen soms toevoegt

Ze kunnen allemaal veilig worden verwijderd. Ze hebben geen betekenis voor weergave of routing, en de tool meldt elke verwijderde naam zodat je het oordeel per parameter ziet.

Wanneer een link binnenkomt verpakt in een l.instagram.com-deelverpakking, geldt dezelfde opschoning voor de bestemming zelf: de eigen deelvingerafdrukken van de verpakte doelwit — si, feature, pp en ab_channel van YouTube, of fbclid van Facebook — worden verwijderd samen met eventuele Instagram-parameters, zodat de afgepelde uitvoer op beide lagen schoon is.

Ondersteunde linkformaten

De invoer accepteert elk adres dat Instagram zelf afgeeft. Elk adres lost op in een van de onderstaande typen:

Formaat Voorbeeld Resultaat
Post instagram.com/p/DIPPWkUh7Rj/ Korte code, media-ID
Reel instagram.com/reel/DIPPWkUh7Rj/ Korte code, media-ID
Reels-weergave instagram.com/reels/DIPPWkUh7Rj/ Korte code, media-ID
IGTV instagram.com/tv/DIPPWkUh7Rj/ Korte code, media-ID
Embed-alias instagram.com/p/DIPPWkUh7Rj/embed/captioned/ Korte code, media-ID
Kale korte code DIPPWkUh7Rj (11 karakters) Korte code, media-ID
Post met gebruikersnaamvoorvoegsel instagram.com/_window7/p/DS7w7fokujz/ Gebruikersnaam, korte code
Reel met gebruikersnaamvoorvoegsel instagram.com/_window7/reel/DPdpzY6kxxc/ Gebruikersnaam, korte code
Profiel instagram.com/some_user.123/ Gebruikersnaam
Verhaal instagram.com/stories/some_user/1234567/ Gebruikersnaam, verhaal-ID
Hoogtepunt instagram.com/stories/highlights/1798abc/ Hoogtepunt-ID
Gids instagram.com/guide/some_user/93711/ Gebruikersnaam, gids-ID
Hashtag instagram.com/explore/tags/photography/ Hashtag
Locatie instagram.com/explore/locations/465487/ Locatie-ID
Linkverpakking l.instagram.com/?u=…&e=… Verpakte bestemming
Kort domein instagr.am/p/DIPPWkUh7Rj/ Korte code, media-ID
Directe link ig.me/m/414231852796565/ Thread-ID
Trefwoordzoekopdracht instagram.com/explore/search/keyword/?q=cats Zoekopdracht
Thread van directe berichten instagram.com/direct/t/414231852796565/ Thread-ID
Nieuw schema voor korte links instagram.com/s/app/TOKEN/ App, token

Een kale korte code van 11 karakters wordt op zichzelf geaccepteerd, handig wanneer je met een API-antwoord of een spreadsheet van ID's werkt in plaats van een deellink. Het https://-voorvoegsel en het www-subdomein zijn beide optioneel — instagram.com/p/…, www.instagram.com/p/… en https://www.instagram.com/p/… worden identiek geparsed, en de uitvoer gebruikt altijd de volledige canonieke vorm. Media-aliassen — embed en embed met bijschrift — worden teruggenormaliseerd naar het posttype in plaats van als aparte typen te worden gepresenteerd. De varianten met gebruikersnaamvoorvoegsel ({username}/p/, {username}/reel/, {username}/tv/) zijn links die van binnen een profielpagina zijn gekopieerd: ze wijzen naar hetzelfde medium en lossen op in hetzelfde type — en dezelfde schone URL — als hun vormen zonder voorvoegsel, zodat dezelfde post nooit als profiel wordt geparsed. Hashtags, locaties en threads van directe berichten worden als eigen typen herkend en produceren canonieke explore- of directe links, terwijl verhalen, hoogtepunten, gidsen en trefwoordzoekopdrachten geen openbaar permalink hebben en daarom hun oorspronkelijke URL met verwijderde trackingparameters uitvoeren.

Twee begeleidende domeinen werken precies zoals instagram.com: instagr.am (het oorspronkelijke korte domein van Instagram, dat oude delingen nog steeds gebruiken) routeert identiek, dus instagr.am/p/… lost op in hetzelfde posttype als zijn tegenhanger met lang domein, en ig.me (het directe-linkdomein) koppelt ig.me/m/{id} aan een thread van directe berichten en ig.me/u/{username} aan een profiel. Een ander geval is de deelverpakking l.instagram.com/?u=…&e=… — het adres dat Instagram afgeeft wanneer een link uit de app of een bio-link wordt gedeeld. De parser pelt hem af: als de u-parameter naar Instagram-inhoud wijst, is het resultaat die inhoud (een verpakte post wordt geparsed als post met alle details), en als hij naar een externe site wijst, leest het type redirect met het verpakte adres als detail. De uitvoer is altijd de afgepelde bestemming zelf.

Gebruik

De tool parst terwijl je typt — er is geen knop om in te drukken:

  1. Plak een Instagram-link — alles uit de bovenstaande formaten, of typ een kale korte code van 11 karakters.
  2. Lees het resultatenpaneel — het linktype, gebruikersnaam, korte code, numerieke media-ID en detailvelden verschijnen terwijl je typt, bij elke toetsaanslag bijgewerkt.
  3. Controleer de rij met verwijderde parameters — elke trackingparameter die Instagram toevoegde, wordt bij naam vermeld, zodat de opschoning controleerbaar is.
  4. Kopieer het resultaat — de canonieke URL verschijnt in het uitvoerveld, klaar om te kopiëren.

Het resultatenpaneel vermeldt ook welke parameters zijn verwijderd, zodat de opschoning controleerbaar is: je ziet igsh en utm_source verwijderd, niet alleen een kortere URL.

Uitvoerformaten

Voor medialinks — posts, reels en IGTV — biedt het uitvoerveld tot vier formaten aan, elk met zijn eigen adresvorm:

Formaat URL Beschikbaar wanneer
Post-URL (standaard) instagram.com/p/{shortcode}/ Altijd — de universele vorm die elk medium weergeeft
Reels-URL instagram.com/reels/{shortcode}/ Alleen wanneer de invoer een /reel/- of /reels/-link is
Embed-URL instagram.com/{p|reel|tv}/{sc}/embed/ Altijd
Embed met bijschrift instagram.com/{p|reel|tv}/{sc}/embed/captioned/ Altijd

De Reels-URL wordt alleen aangeboden wanneer de link als reel binnenkwam — /reel/ of /reels/, met of zonder gebruikersnaamvoorvoegsel — omdat die routes garanderen dat het medium een reel is. Een /p/-link kan een reel achter zijn postvorm verbergen, maar kan ook een gewone post zijn, en dat is niet uit de URL alleen af te leiden; het produceren van een /reels/-link voor niet-reel-media stuurt de bezoeker naar de reels-browser in plaats van naar de post, wat erger is dan een kapotte link. Wanneer het type onzeker is, wordt de optie simpelweg niet getoond en valt een geselecteerde reels-uitvoer terug op de postvorm.

De embedvormen behouden het padwerkwoord waarmee de link binnenkwam — een /reel/-link embedt als /reel/{sc}/embed/, een /p/-link als /p/{sc}/embed/ — omdat Instagram het embed-endpoint van elk werkwoord afzonderlijk bedient en /reels/{sc}/embed/ niet bestaat. De formaatkeuze verschijnt alleen voor medialinks; profielen, tags, locaties en threads van directe berichten hebben één canonieke vorm, en verhalen, hoogtepunten en gidsen voeren hun trackingvrije oorspronkelijke URL uit.

Stap voor stap

Doorloop een rommelige deellink van kopiëren tot schone URL.

Stap 1 — Haal een rommelige link op. Open Instagram, vind een post, tik op Delen en kopieer de link. Hij ziet er ongeveer zo uit: https://www.instagram.com/p/DIPPWkUh7Rj/?utm_source=ig_web_copy_link&igshid=YzMyNjBhcA%3D%3D&igsh=cXdlbg%3D%3D. Er zitten al twee deelparameters aan vast.

Stap 2 — Plak hem. Klik op het invoerveld en plak (Ctrl+V of Cmd+V). Het resultatenpaneel vult zich meteen: type post, korte code DIPPWkUh7Rj, media-ID 3607169348072354915, en de rij met verwijderde parameters toont utm_source, igshid, igsh.

Stap 3 — Lees de media-ID. De rij Media-ID toont 3607169348072354915. Dat is het geheel getal dat Instagrams eigen API's voor deze post gebruiken, lokaal gedecodeerd uit de korte code zonder netwerk-omweg. Plak hier elke korte code van 11 karakters en je krijgt meteen zijn numerieke tweeling.

Stap 4 — Kopieer de schone post-URL. Het uitvoerveld toont nu https://www.instagram.com/p/DIPPWkUh7Rj/ — dezelfde post, geen vingerafdruk. Kopieer hem om door te sturen, zet hem in een document of plak hem in een linkarchief zonder een deeltrail achter te laten.

Stap 5 — Probeer een Reel. Plak https://www.instagram.com/reel/DIPPWkUh7Rj/?igsh=gCXI. Het type leest reel, de korte code en media-ID komen op dezelfde manier door, en de uitvoer valt standaard terug op de universele postvorm instagram.com/p/DIPPWkUh7Rj/. Omdat de invoerroute garandeert dat dit een reel is, is de optie Reels-URL beschikbaar — schakel ernaar en de uitvoer wordt instagram.com/reels/DIPPWkUh7Rj/. Schakel naar Embed-URL en je krijgt instagram.com/reel/DIPPWkUh7Rj/embed/, klaar voor een iframe.

Stap 6 — Probeer een kale korte code. Werk je met een spreadsheet van ID's? Typ de 11 karakters apart — DIPPWkUh7Rj — en de tool behandelt ze als een volledige postlink, compleet met media-ID en canonieke URL.

Stap 7 — Pel een deelverpakking af. Plak een bio-link: https://l.instagram.com/?u=https%3A%2F%2Fwww.instagram.com%2Fp%2FDIPPWkUh7Rj%2F%3Figsh%3Dabc&e=AUD-…. De verpakking opent zich: het type leest post met volledige korte code en media-ID, de lijst van verwijderden toont igsh, en de uitvoer is de canonieke https://www.instagram.com/p/DIPPWkUh7Rj/. Plak nu een verpakking die naar een externe site wijst — ?u=…youtube.com/@hello_lucy?si=…&fbclid=… — en het type leest redirect, het detail toont de verpakte bestemming, en de uitvoer is die bestemming met de eigen si- en fbclid-vingerafdrukken verwijderd.

Tips

  • Verwijder elke deling voordat je doorstuurt. De parameters die Instagram toevoegt (igsh, igshid, utm_*) vingerafdrukken de delegebeurtenis, niet de inhoud. Elke link door de parser halen is een gewoonte van twee seconden die ze elke keer verwijdert.
  • Gebruik de media-ID om datasets te kruisen. Als je een export van media-ID's hebt — uit een datadownload, een back-up of een andere API — plak hier een korte code, kopieer de media-ID en zoek in je gegevens naar een exacte overeenkomst. De decoder gebruikt BigInt, dus grote reel-ID's zijn exact.
  • Behandel reels, posts en embeds als één ding. Een /reel/, een /p/ en een /p/embed/captioned/ lossen allemaal op in dezelfde media-ID en dezelfde canonieke URL. Plak de variant die je ontving en krijg één consistent antwoord.
  • Pel bio-links af voordat je ze logt. l.instagram.com/?u=…-verpakkingen verbergen hun bestemming achter een URL-gecodeerde parameter en dragen hun eigen vervaltoken. Ze door de parser halen levert het werkelijke adres op — Instagram-inhoud lost op in zijn canonieke vorm, externe links worden getoond als redirect en schoongemaakt van hun eigen deelvingerafdrukken.
  • Verhalen en hoogtepunten zijn geen permalinks. Ze hebben geen canonieke URL, dus de parser meldt ze als verhaal/hoogtepunt en voert de oorspronkelijke link uit met de deelparameters verwijderd — een deelbaar adres dat nog steeds naar de juiste plek wijst.
  • Audit een linkarchief in bulk. Omdat parsen onmiddellijk en lokaal is, duren honderd plakbewegingen ongeveer even lang als honderd toetsaanslagen, en de rij met verwijderde parameters registreert per link hoeveel tracking elke link droeg.

Alternatieven

Hoe inspecteren mensen gewoonlijk een Instagram-link? De tabel vult de opties in:

Methode Toont linktype Decodeert media-ID Verwijdert deelparameters Uploadt je link
Kopiëren en doorsturen Nee Nee Nee Nee
Handmatige inspectie Ja, op het oog Nee (handmatig) Ja, met de hand Nee
Embedgenerator van Instagram Ja, alleen media Nee Nee Ja
Korte-linkdiensten van derden Nee Nee Nee Ja
Deze tool Ja, gestructureerd Ja, met BigInt Ja, zichtbaar vermeld Nee

Handmatige inspectie werkt maar is veeleisend: igsh, igshid en utm_source lijken op elkaar, en het met de hand decoderen van de base-64url-media-ID is werk voor een rekenmachine. De embedgenerator van Instagram behandelt alleen media, heeft een netwerk-omweg nodig en stuurt de URL naar huis om de embedcode te produceren. Korte-linkdiensten van derden vervangen Instagrams tracking door hun eigen omleiding en uploaden de URL naar hun server. Deze tool is de enige rij met nul uploads en een gestructureerde uitsplitsing, en hij toont wat hij verwijderde in plaats van stilletjes te herschrijven.

Vergeleken met de officiële API's

Het nul-verzoekontwerp van de parser is een bewuste afweging, en de andere kant van de afweging is het benoemen waard. De Instagram-oppervlakken die wel rijkere vragen over een medium beantwoorden, zijn oEmbed en de Instagram Graph API — en de tabel toont waar elk pad wint:

Mogelijkheid oEmbed Graph API Deze tool
Een URL in onderdelen splitsen Nee Nee Ja, lokaal en onmiddellijk
Deelparameters met auditlijst verwijderen Nee Nee Ja, zichtbaar gerapporteerd
Embeds terugzetten naar het canonieke adres Nee Nee Ja
Korte code decoderen naar numerieke media-ID Nee Nee Ja, met BigInt-precisie
Numerieke media-ID terug coderen naar korte code Nee Nee Ja
Bijschrift, weergavetellingen, eigenaarsnaam Ja Ja Niet beschikbaar
Regio- en toegangscontroles Nee Ja Niet beschikbaar
API-sleutel / login nodig Token Ja Geen — nul verzoeken

oEmbed beantwoordt hoe heet dit medium, in één oproep die toch een token nodig heeft; de Graph API beantwoordt alles, tegen de prijs van een token, een login en een quotum; deze tool beantwoordt wat zit er in deze link, zonder enig verzoek. De drie concurreren niet — URL-parsen is browserwerk, metadata is netwerkwerk. Als een workflow beide nodig heeft, draai dan de parser voor de URL en roep de Graph API aan voor het bijschrift: elk doet zijn eigen werk zonder de kosten van de ander.

Wat de tool niet doet

Eerlijkheid over de grenzen hoort bij wat een parser betrouwbaar maakt.

  • Hij haalt het medium niet op. Geen thumbnailverzoeken, geen player-laden, geen reel-resolutie, geen analytics-beacons. Parsen is puur lokaal stringwerk.
  • Hij lost een gebruikersnaam niet op naar een profiel-ID. some_user blijft een gebruikersnaam. Voor de resolutie zijn de Instagram Graph API en een inlogtoken nodig, die deze tool bewust nooit aanroept.
  • Hij toont geen bijschriften, weergavetellingen of eigenaarsnamen. Die komen van oEmbed of de Graph API — beide netwerkoproepen. Het nul-verzoekontwerp van de tool ruilt verrijking in voor privacy.
  • Hij controleert niet of het medium bestaat. Een geldige korte code van 11 karakters wordt netjes geparsed of de post nu live, verwijderd of nooit bestaan heeft. Het bevestigen van het bestaan zou een netwerkoproep vereisen.

Alles wat de parser nuttig maakt — splitsen, decoderen, opschonen, omzetten — is lokaal. Alles wat het netwerk nodig heeft, is een aparte dienst, en de afweging is hier gedocumenteerd in plaats van verborgen.

Problemen oplossen

Probleem Oorzaak Oplossing
Plakken doet niets De tekst is helemaal geen Instagram-URL-formaat Gebruik een link uit de app of het web, of een kale media-korte code van 11 karakters
De schone URL behoudt het oorspronkelijke pad Het linktype heeft geen openbaar permalink Verhalen, hoogtepunten en gidsen voeren hun trackingvrije oorspronkelijke URL uit in plaats van een canonieke vorm
De media-ID-rij is leeg De URL is geen mediatype (geen korte code) Media-ID's worden alleen getoond voor posts, reels en IGTV; profielen en tags hebben er geen
De optie Reels-URL ontbreekt De link garandeert geen reel /p/, /tv/ en kale korte codes kunnen gewone posts zijn; de reels-uitvoer wordt alleen aangeboden voor /reel/- en /reels/-links om bezoekers niet naar de verkeerde inhoud te sturen
Een trackingparameter verschijnt nog in de uitvoer Het is een semantische parameter, geen tracker igsh, igshid en utm_* zijn de verwijderde trackers; routeparameters blijven zoals ze zijn
Twee korte codes zien er verschillend uit Ze verwijzen naar verschillende posts Decodeer beide naar hun media-ID's — identieke ID's betekenen identieke posts

Privacy en gegevensverwerking

De parser volgt het strengste privacymodel van de Toollect-tools: hij doet helemaal geen netwerkverzoeken.

  • Er wordt niets geüpload. De URL wordt in je browser geparsed. Er wordt nooit een verzoek verstuurd dat haar bevat — niet naar een server, niet naar Instagrams API, niet naar een analytics-beacon.
  • Geen account, geen tracking. Er is geen login, geen analytics en geen geschiedenis van de links die je plakt.
  • Er wordt niets opgeslagen. De tool bewaart geen staat tussen bezoeken; sluit het tabblad en de geplakte URL is weg.
  • Geen scripts van derden. Anders dan tools die embed- of deelwidgets laden, draait deze pagina volledig op zijn eigen code.

Als privacy de reden is waarom je hier bent: dit is de pagina waar je de link kunt plakken die je nergens anders zou plakken.

Technische specificaties

Details:

  • Invoerformaten: post, reel, reels, IGTV, embed-/bijschrift-aliassen, kale korte code van 11 karakters, profiel, verhaal, hoogtepunt, gids, hashtag, locatie, trefwoordzoekopdracht, thread van directe berichten, nieuw schema voor korte links, instagr.am- en ig.me-korte domeinen, l.instagram.com/?u=…-deelverpakkingen; https:// en het www-subdomein zijn optioneel
  • Verwijderde deelparameters: igsh, igshid, utm_source, utm_medium, utm_campaign, utm_term, utm_content; bij het afpellen van l.instagram.com-links worden ook de eigen deelvingerafdrukken van de verpakte doelwit (si, feature, pp, ab_channel, fbclid) verwijderd
  • Media-ID-decodering: base-64url tegen het Instagram-alfabet (A–Z a–z 0-9 - _) met BigInt-rekenkunde, teruggegeven als decimale string; omkeerbaar naar korte code
  • Uitvoer: voor media instagram.com/p/{shortcode}/ (post), instagram.com/reels/{shortcode}/ (reels-weergave), instagram.com/{p|reel|tv}/{shortcode}/embed/ en /embed/captioned/ (embedvormen, met behoud van het invoerwerkwoord); voor andere instagram.com/{username}/, instagram.com/explore/tags/{tag}/, instagram.com/explore/locations/{id}/ of instagram.com/direct/t/{id}/
  • Verwerking: 100% JavaScript in de browser met nul netwerkverzoeken, geen API-sleutel, geen server
  • Browserondersteuning: alle moderne browsers (BigInt, URLSearchParams, clipboard-API)

Functies

  • Splitst Instagram-posts, reels, IGTV, profielen, verhalen, gidsen, hashtags, locaties en directe berichten op in hun onderdelen
  • Decodeert de 11-karakterige korte code naar zijn numerieke media-ID met BigInt-precisie en codeert hem terug
  • Verwijdert trackingparameters voor delen zoals igsh, igshid en utm_* terwijl exact wordt vermeld wat is verwijderd
  • Genereert canonieke links zonder vingerafdruk voor posts, profielen, tags, locaties en threads van directe berichten
  • Normaliseert embed- en /embed/captioned/-varianten terug naar de standaard post-URL
  • Pelt l.instagram.com-deelverpakkingen af tot de verpakte bestemming, en ruimt ook de deelvingerafdrukken op
  • Herkent de begeleidende korte domeinen instagr.am en ig.me
  • Accepteert een kale korte code op zichzelf, handig voor ID's uit API's of spreadsheets
  • Accepteert links met of zonder het https://-voorvoegsel en het www-subdomein
  • 100% JavaScript in de browser met nul netwerkverzoeken, geen API-sleutel en niets wordt geüpload

Veelgestelde vragen

Wat is een Instagram-URL-parser?
Een Instagram-URL-parser leest elke Instagram-link en splitst hem op in zijn onderdelen — het linktype, de gebruikersnaam, de korte code, de gedecodeerde media-ID en het detail (hashtag, locatie, verhaal-ID, thread-ID). Hij produceert ook een schone canonieke link waaruit de trackingparameters zijn verwijderd die Instagram bij het delen toevoegt, zodat de URL die je doorstuurt geen deelvingerafdruk draagt.
Werkt het zonder een Instagram-API-sleutel?
Ja. Het parsen van een Instagram-URL is puur string- en regexwerk dat volledig in je browser draait. De tool doet helemaal geen netwerkverzoeken — niet naar Instagram, niet naar oEmbed, niet naar een analytics-endpoint — dus geen API-sleutel, geen app-registratie, geen quotum en er wordt nergens iets geüpload.
Wat is een Instagram-korte code en waarom zou ik hem naar een media-ID decoderen?
Instagram codeert elke post en reel achter een compacte korte code van 11 karakters (zoals DIPPWkUh7Rj) in base-64url-vorm. De numerieke media-ID achter die korte code is wat Instagrams eigen API's en databases intern gebruiken. Decoderen laat je een gedeelde URL matchen met een record in een export, hetzelfde medium via een ander hulpmiddel opzoeken of bevestigen dat twee korte codes naar dezelfde post verwijzen. De numerieke ID's zijn groot genoeg om het veilige integerbereik van JavaScript te overschrijden, dus de tool decodeert ze met volledige BigInt-precisie.
Welke trackingparameters verwijdert de opschoner?
De opschoner verwijdert Instagram-deelparameters (igsh, igshid) en Google Analytics-campagneparameters (utm_source, utm_medium, utm_campaign, utm_term, utm_content). Omdat Instagrams deelstroom deze parameters toevoegt wanneer je een link uit de app kopieert, herstelt het verwijderen de link in zijn canonieke vorm. De namen van de verwijderde parameters verschijnen in de resultaten, zodat je precies ziet wat eraf is gehaald.
Wat is l.instagram.com en waarom toont plakken een andere site?
l.instagram.com is de deelverpakking van Instagram — het adres dat wordt afgegeven wanneer een link uit de app wordt gedeeld of uit een bio-link wordt gekopieerd, met de echte bestemming URL-gecodeerd verborgen in zijn u-parameter. De parser pelt hem af — een verpakte Instagram-link lost op in die inhoud met alle details (een verpakte post wordt geparsed als post), en een verpakte externe link toont het type _redirect_ met de bestemming als detail. In beide gevallen is de uitvoer de afgepelde bestemming zelf, met ook de eigen deelvingerafdrukken — si, feature, pp, ab_channel van YouTube of fbclid van Facebook — verwijderd.
Waarom ontbreekt de optie Reels-URL soms?
Een reels-URL wordt alleen correct weergegeven als het medium echt een reel is. De routes die dat garanderen — /reel/ en /reels/, met of zonder gebruikersnaamvoorvoegsel — bieden de optie Reels-URL aan; de andere (/p/, /tv/, kale korte codes) kunnen een gewone post verbergen, en het produceren van een reels-link voor een niet-reel stuurt de bezoeker naar de reels-browser in plaats van naar de post, wat erger is dan een kapotte link. Wanneer de route geen reel garandeert, wordt de optie simpelweg niet getoond en valt een geselecteerde reels-uitvoer terug op de postvorm.
Wat zijn instagr.am en ig.me?
Dat zijn de begeleidende korte domeinen van Instagram. instagr.am is het oorspronkelijke korte domein dat oudere delingen nog steeds produceren en routeert precies zoals instagram.com, dus instagr.am/p/… wordt geparsed als hetzelfde posttype. ig.me is het directe-linkdomein — ig.me/m/{id} is een thread van directe berichten en ig.me/u/{username} is een profiel.
Waarom verschilt de opgeschoonde URL van de link die ik plakte?
Instagram geeft verschillende varianten van dezelfde media-URL af — een reel-URL, een embed-URL, een embed met bijschrift, een kopie met gebruikersnaamvoorvoegsel en de canonieke post-URL kunnen allemaal naar één korte code verwijzen. De opschoner herschrijft elke medialink naar het adres dat jij kiest — standaard de universele postvorm instagram.com/p/{shortcode}/, de reels-weergave instagram.com/reels/{shortcode}/ of een van de embedvormen — terwijl profiellinks instagram.com/{username}/ worden. Zo is de URL die je kopieert degene die past waar je hem plakt.
Wat doet de tool niet?
Hij haalt het medium, het bijschrift, de eigenaarsnaam, de weergavetellingen of metadata niet op — daarvoor zou de Instagram Graph API en een inlogtoken nodig zijn, die deze tool bewust nooit aanroept. Hij controleert ook niet of een post nog bestaat; een korte code van 11 karakters wordt netjes geparsed of de post nu live, verwijderd of nooit bestaan heeft.
ESC