{"record":{"id":"a8577b92f83260fc","repo":"tonhowtf/omniget","slug":"could-not-resolve-share-link-mod","errorCode":null,"errorMessage":"Could not resolve share link","messagePattern":"Could not resolve share link","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"src-tauri/src/platforms/instagram/mod.rs","lineNumber":121,"sourceCode":"        None\n    }\n\n    fn is_story_url(url: &str) -> bool {\n        if let Ok(parsed) = url::Url::parse(url) {\n            let path = parsed.path().to_lowercase();\n            return path.starts_with(\"/stories/\");\n        }\n        false\n    }\n\n    async fn resolve_share_link(&self, share_id: &str) -> anyhow::Result<String> {\n        let url = format!(\"https://www.instagram.com/share/{}/\", share_id);\n\n        let response = self.redirect_client.get(&url).send().await?;\n        let final_url = response.url().to_string();\n\n        if final_url.contains(\"/share/\") || final_url == url {\n            return Err(anyhow!(\"Could not resolve share link\"));\n        }\n\n        Ok(final_url)\n    }\n\n    fn regex_extract(pattern: &str, text: &str) -> Option<String> {\n        let re = Regex::new(pattern).ok()?;\n        re.captures(text)?.get(1).map(|m| m.as_str().to_string())\n    }\n\n    fn extract_object_entry(name: &str, html: &str) -> Option<serde_json::Value> {\n        let pattern = format!(r#\"\\[\"{}\",.*?,(\\{{.*?\\}}),\\d+\\]\"#, regex::escape(name));\n        let re = Regex::new(&pattern).ok()?;\n        let json_str = re.captures(html)?.get(1)?.as_str();\n        serde_json::from_str(json_str).ok()\n    }\n\n    fn extract_number_from_query(name: &str, html: &str) -> Option<String> {","sourceCodeStart":103,"sourceCodeEnd":139,"githubUrl":"https://github.com/tonhowtf/omniget/blob/8600b91f4246848bac346874daa9e61c1fc5677a/src-tauri/src/platforms/instagram/mod.rs#L103-L139","documentation":"resolve_share_link followed an instagram.com/share/<id>/ short link but the final URL still contains /share/ or equals the original — the redirect never resolved to a real post/profile URL. The share slug is invalid, expired, or Instagram refused the anonymous redirect, so no media id can be extracted.","triggerScenarios":"Thrown at src-tauri/src/platforms/instagram/mod.rs:121 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Copy the full instagram.com/p/<shortcode>/ link instead of the share link","Check the post still exists and is public","Retry later — Instagram sometimes refuses share redirects transiently"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8600b91f4246848bac346874daa9e61c1fc5677a","analyzedAt":"2026-09-12T14:29:19.317Z","contentChangedAt":"2026-09-12T14:29:19.317Z","schemaVersion":2},"datasetVersion":"2026-09-15T23:17:13.987Z"}