Debugging
curl -s https://301.so/_debug/yt-ig \ -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 Mobile/15E148 Instagram 331.0.0.37.90"{ "slug": "docs-check", "trouve": true, "destination": "https://www.youtube.com/@VincentLeSerpent?utm_source=docs", "decision": { "kind": "interstitial", "scheme": "vnd.youtube://www.youtube.com/@VincentLeSerpent?utm_source=docs", "web": "https://www.youtube.com/@VincentLeSerpent?utm_source=docs", "app": "YouTube" }, "pourquoi": "iOS dans une webview : WKWebView n'intercepte pas les Universal Links en navigation directe, il faut un tap utilisateur.", "userAgent": { "brut": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 …) Instagram 331.0.0.37.90", "platform": "ios", "device": "mobile", "os": "iOS", "browser": "instagram", "inApp": "instagram", "isBot": false }, "reseau": { "pays": "MT", "colo": "MRS" }}An unknown slug answers 404 with trouve: false — and still reports what it
read from your user-agent, which is usually the half you needed:
{ "slug": "pas-un-slug", "trouve": false, "userAgent": { "platform": "android", … } }Why it is public
Section titled “Why it is public”Because it is worthless otherwise. Its whole job is to be opened from a phone,
inside Instagram’s webview, at the moment something isn’t working — and you
cannot set an Authorization header there. Paste 301.so/_debug/<slug> in a
DM to yourself, tap it, read the JSON.
It exposes nothing beyond what following the link already reveals: no internal
identifiers, no team, no token. It also answers cache-control: no-store —
every request must be decided again, because the answer depends on the caller.
Reading it
Section titled “Reading it”decision.kind is the branch that would be taken, and pourquoi says why in
one sentence. Compare it with the matrix in Deep links:
plainwhen you expectedintent→ the destination hostname matches no recipe, ordeeplink.enabledisfalseon the link.plainon a real phone →isBotis probablytrue. CheckuserAgent.brut.universalinside Instagram →inAppcame backnone; the app changed its user-agent, which happens.interstitialon Android → shouldn’t happen; Android never gets one.
reseau reports the Cloudflare edge that answered (pays, colo) — useful
when the question is “is this a geography problem”, and the same country code
that ends up in the click dimensions.