{"id":17567848,"url":"https://github.com/roseal-extension/roblox-deeplink-parser","last_synced_at":"2026-03-01T09:01:31.769Z","repository":{"id":258916369,"uuid":"875200592","full_name":"RoSeal-Extension/Roblox-DeepLink-Parser","owner":"RoSeal-Extension","description":"Parse Roblox website links, appsflyer links, and deeplinks, mainly for use for deeplinks","archived":false,"fork":false,"pushed_at":"2026-02-25T21:24:44.000Z","size":64,"stargazers_count":19,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-26T00:15:47.837Z","etag":null,"topics":["bun","roblox"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RoSeal-Extension.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["RoSeal-Extension"]}},"created_at":"2024-10-19T11:04:17.000Z","updated_at":"2026-02-25T21:20:49.000Z","dependencies_parsed_at":"2025-03-07T19:31:18.142Z","dependency_job_id":"d9821ce1-a6c4-4e9a-8e4b-884b3647411f","html_url":"https://github.com/RoSeal-Extension/Roblox-DeepLink-Parser","commit_stats":null,"previous_names":["roseal-extension/roblox-deeplink-parser"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/RoSeal-Extension/Roblox-DeepLink-Parser","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoSeal-Extension%2FRoblox-DeepLink-Parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoSeal-Extension%2FRoblox-DeepLink-Parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoSeal-Extension%2FRoblox-DeepLink-Parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoSeal-Extension%2FRoblox-DeepLink-Parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RoSeal-Extension","download_url":"https://codeload.github.com/RoSeal-Extension/Roblox-DeepLink-Parser/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RoSeal-Extension%2FRoblox-DeepLink-Parser/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29965419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T06:55:38.174Z","status":"ssl_error","status_checked_at":"2026-03-01T06:53:04.810Z","response_time":124,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bun","roblox"],"created_at":"2024-10-21T16:06:57.151Z","updated_at":"2026-03-01T09:01:31.738Z","avatar_url":"https://github.com/RoSeal-Extension.png","language":"TypeScript","funding_links":["https://github.com/sponsors/RoSeal-Extension"],"categories":[],"sub_categories":[],"readme":"# Roblox DeepLink Parser\nParse Roblox deeplinks (roblox://*), website links (www.roblox.com), and appsflyer links (ro.blox.com) to get params and get new appysflyer/deeplink/website URLs.\n\n## Example\n```ts\nimport DeepLinkParser from \"roblox-deeplink-parser\";\nconst parser = new DeepLinkParser();\n\n// same as parser.parseWebsiteLink\nparser.parseLink(\"https://www.roblox.com/my/avatar\").then((link) =\u003e {\n\tif (link) {\n        // roblox://navigation/avatar\n\t\tconsole.log(link.toProtocolUrl());\n        // https://www.roblox.com/my/avatar\n\t\tconsole.log(link.toWebsiteUrl());\n        // https://ro.blox.com/Ebh5?af_dp=roblox%3A%2F%2Fnavigation%2Favatar\u0026af_web_dp=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar\n\t\tconsole.log(link.toAppsFlyerUrl());\n\t}\n});\n\n// ... and you can do these as well specifically:\nparser.parseProtocolLink(\"roblox://navigation/avatar\")\nparser.parseAppsFlyerLink(\"https://ro.blox.com/Ebh5?af_dp=roblox%3A%2F%2Fnavigation%2Favatar\u0026af_web_dp=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar\");\nparser.parseWebsiteLink(\"https://www.roblox.com/my/avatar\");\n```\n\n## Reference\n| Deeplink | Website Equivalent | Description |\n| -------- | ------------------ | ----------- |\n| `roblox://experiences/start` or `roblox://` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- placeId\u003cbr /\u003e- userId\u003cbr /\u003e- gameInstanceId\u003cbr /\u003e - accessCode\u003cbr /\u003e- linkCode\u003cbr /\u003e- launchData\u003cbr /\u003e - joinAttemptId\u003cbr /\u003e- joinAttemptOrigin\u003cbr /\u003e- reservedServerAccessCode\u003cbr /\u003e- callId\u003cbr /\u003e- browserTrackerId\u003cbr /\u003e- referralPage\u003cbr /\u003e- referredByPlayerId\u003cbr /\u003e- eventId\u003cbr /\u003e- isoContext | `www.roblox.com/games/start` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- placeId\u003cbr /\u003e - gameInstanceId\u003cbr /\u003e - accessCode\u003cbr /\u003e- linkCode\u003cbr /\u003e- launchData\u003cbr /\u003e - joinAttemptId\u003cbr /\u003e- joinAttemptOrigin\u003cbr /\u003e- reservedServerAccessCode\u003cbr /\u003e- callId\u003cbr /\u003e- browserTrackerId\u003cbr /\u003e- referralPage\u003cbr /\u003e- referredByPlayerId | Join a server or user, for more information please see [Bloxstrap wiki](https://github.com/bloxstraplabs/bloxstrap/wiki/A-deep-dive-on-how-the-Roblox-bootstrapper-works#starting-roblox)\n| `roblox://navigation/profile` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- groupId\u003cbr /\u003e- userId\u003cbr /\u003e- friendshipSourceType | `www.roblox.com/users/{userId}/profile` or `www.roblox.com/communities/{groupId}/name` | Open webview of a user or community on the website\n| `roblox://navigation/group` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- groupId\u003cbr /\u003e- forumCategoryId\u003cbr /\u003e- forumPostId\u003cbr /\u003e- forumCommentId| `www.roblox.com/communities/{groupId}/name` | Open webview of a community page\n| `roblox://navigation/profile_card` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- userId | `www.roblox.com/users/{userId}/profile` | Opens the native app view of a user profile\n| `roblox://navigation/content_posts` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- userId\u003cbr /\u003e- postId | N/A | Show content posts \"captures\" from a user or a specific post\n| `roblox://navigation/share_links` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- type\u003cbr /\u003e- code | `www.roblox.com/share-links` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- type\u003cbr /\u003e- code | Resolve a share link, which could be a friend invite, experience details link, experience invite, etc.\n| `roblox://navigation/gift_cards` | `www.roblox.com/giftcards` | Open webview of the giftcards page\n| `roblox://navigation/external_web_link` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- domain (zendesk)\u003cbr /\u003e- locale\u003cbr /\u003e- articleId | `en.help.roblox.com/hc/{locale}/articles/{articleId}` | Open webview of a zendesk article\n| `roblox://navigation/chat` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- userId\u003cbr /\u003e- chatId\u003cbr /\u003e- entryPoint | N/A | Open chat conversation with a user or another type of conversation (group)\n| `roblox://navigation/appeals` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- vid | `www.roblox.com/report-appeals#/v/{vid}` | Open webview of appeals page or a certain appeal request\n| `roblox://navigation/home` | `www.roblox.com/home` | Open home page\n| `roblox://navigation/event_details` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- eventId | `www.roblox.com/events/{eventId}` | Open details of an experience event\n| `roblox://navigation/crossdevice` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- code | `www.roblox.com/crossdevicelogin/confirmcode` | Open crossdevice login page, and automatically enter the code if there was one in the deeplink\n| `roblox://navigation/contacts` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- contactId\u003cbr /\u003e- assetId\u003cbr /\u003e- avatarImageUrl | N/A | Open contacts page (or friend requests page)\n| `roblox://navigation/avatar_clothing_sort` | N/A | Open avatar clothing sorting page\n| `roblox://navigation/avatar_profile_picture_editor` | N/A | Open avatar profile picture editor page\n| `roblox://navigation/catalog` | `www.roblox.com/catalog` | Open avatar marketplace page\n| `roblox://navigation/catalog/equip` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- itemId\u003cbr /\u003e- itemType (Asset\\|Bundle) | N/A | Equip or try on an avatar item\n| `roblox://navigation/friends` | `www.roblox.com/users/friends` | View the currently authenticated user's friends\n| `roblox://navigation/avatar` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- itemType (Character)\u003cbr /\u003e- itemId | `www.roblox.com/my/avatar` | Open the avatar editor page\n| `roblox://navigation/more` | N/A | Open the More section of the app\n| `roblox://navigation/games` | `www.roblox.com/charts` | Open the charts page\n| `roblox://navigation/sort` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- sortName | `www.roblox.com/charts#/sortName/{sortId}` | Open the charts sort page\n| `roblox://navigation/item_details` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- itemType (Look\\|Asset\\|Bundle)\u003cbr /\u003e- itemId | `www.roblox.com/catalog/{itemId}/name`, `www.roblox.com/bundles/{itemId}/name`, or `www.roblox.com/looks/{itemId}/name` | Open the details page of an avatar asset, bundle, or look\n| `roblox://navigation/account_info` | `www.roblox.com/my/account#!/info` | Open webview of the account settings info page\n| `roblox://navigation/notification_settings` | `www.roblox.com/my/account#!/notifications` | Open webview of the account settings notifications page\n| `roblox://navigation/privacy_settings` | `www.roblox.com/my/account#!/privacy` | Open webview of the account settings privacy page\n| `roblox://navigation/parental_controls` | `www.roblox.com/my/account#!/parental-controls` | Open webview of the account settings parental controls page\n| `roblox://navigation/spending_settings` | `www.roblox.com/my/account#!/payment-methods` | Open webview of the account settings payment methods page\n| `roblox://navigation/qr_code_redemption` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- itemType (Asset\\|Bundle)\u003cbr /\u003e- itemId | N/A | Redeem an item which can be obtained by scanning a QR code\n| `roblox://navigation/game_details` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- gameId\u003cbr /\u003e- privateServerLinkCode | `www.roblox.com/games/{placeId}/name` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- privateServerLinkCode | Opens the details page of an experience\n| `roblox://navigation/security_alert` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- payload | `www.roblox.com/security-feedback` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- payload | Opens security feedback page\n| `roblox://navigation/experience_sort` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- sortId | N/A | Opens an experience sort page on the home page\n| `roblox://navigation/party` | N/A | Opens the party page\n| `roblox://navigation/app_permissions_settings` | `www.roblox.com/my/account#!/app-permissions` | Opens the app permissions page\n| `roblox://navigation/screentime_subsettings` | `www.roblox.com/my/account#!/privacy/Screentime` | Opens the screentime subsettings page\n| `roblox://navigation/blocked_experiences_subsettings` | `www.roblox.com/my/account#!/privacy/ContentRestrictions/BlockedExperiences` | Opens the blocked experiences subsettings page\n| `roblox://navigation/blocked_users_subsettings` | `www.roblox.com/my/account#!/privacy/BlockedUsers` | Opens the blocked users subsettings page\n| `roblox://navigation/experience_chat_subsettings` | `www.roblox.com/my/account#!/privacy/ExperienceChat` | Opens the experience chat subsettings page\n| `roblox://navigation/party_subsettings` | `www.roblox.com/my/account#!/privacy/Party` | Opens the party subsettings page\n| `roblox://navigation/voice_subsettings` | `www.roblox.com/my/account#!/privacy/Voice` | Opens the voice subsettings page\n| `roblox://navigation/trading_inventory_subsettings` | `www.roblox.com/my/account#!/privacy/TradingInventory` | Opens the trading inventory subsettings page\n| `roblox://navigation/friends_contacts_subsettings` | `www.roblox.com/my/account#!/privacy/FriendsAndContacts` | Opens the friends and contacts subsettings page\n| `roblox://navigation/private_server_subsettings` | `www.roblox.com/my/account#!/privacy/PrivateServers` | Opens the private server subsettings page\n| `roblox://navigation/visibility_subsettings` | `www.roblox.com/my/account#!/privacy/Visibility` | Opens the visibility subsettings page\n| `roblox://navigation/fae` | N/A | Opens the facial age estimation page\n| `roblox://navigation/fae_upsell_overlay` | N/A | Opens the facial age estimation overlay page\n| `roblox://navigation/account_recovery` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- origin\u003cbr /\u003e- username\u003cbr /\u003e- recoverySessionId | `www.roblox.com/login/forgot-password-or-username` \u003cbr /\u003eSearch Parameters:\u003cbr /\u003e- origin\u003cbr /\u003e- username\u003cbr /\u003e- recoverySessionId | Opens the account recovery page\n| `roblox://navigation/messages` | `https://www.roblox.com/my/messages` | Opens the systen messages page","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froseal-extension%2Froblox-deeplink-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froseal-extension%2Froblox-deeplink-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froseal-extension%2Froblox-deeplink-parser/lists"}