{"id":39911588,"url":"https://github.com/henhouse/fortnite-go","last_synced_at":"2026-01-18T16:31:00.868Z","repository":{"id":57540307,"uuid":"129528660","full_name":"henhouse/fortnite-go","owner":"henhouse","description":"Fortnite API client in Golang. Get player statistics, server status, and global leaderboards. [OUTDATED]","archived":false,"fork":false,"pushed_at":"2019-12-07T17:59:41.000Z","size":29,"stargazers_count":7,"open_issues_count":2,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-06-20T16:50:04.819Z","etag":null,"topics":["api","epicgames","fortnite","fortnite-api","fortnite-stats"],"latest_commit_sha":null,"homepage":"","language":"Go","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/henhouse.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-04-14T15:17:43.000Z","updated_at":"2023-10-02T12:15:21.000Z","dependencies_parsed_at":"2022-09-26T18:31:06.176Z","dependency_job_id":null,"html_url":"https://github.com/henhouse/fortnite-go","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/henhouse/fortnite-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henhouse%2Ffortnite-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henhouse%2Ffortnite-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henhouse%2Ffortnite-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henhouse%2Ffortnite-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/henhouse","download_url":"https://codeload.github.com/henhouse/fortnite-go/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henhouse%2Ffortnite-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28541527,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T14:59:57.589Z","status":"ssl_error","status_checked_at":"2026-01-18T14:59:46.540Z","response_time":98,"last_error":"SSL_read: 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":["api","epicgames","fortnite","fortnite-api","fortnite-stats"],"created_at":"2026-01-18T16:31:00.782Z","updated_at":"2026-01-18T16:31:00.848Z","avatar_url":"https://github.com/henhouse.png","language":"Go","funding_links":["https://www.paypal.me/wh93?country.x=US\u0026locale.x=en_US"],"categories":[],"sub_categories":[],"readme":"# fortnite-go\nAn interfacer for the [Fortnite](https://www.epicgames.com/fortnite) game API. Can retrieve player statistics and global leaderboard information by specified platform type. Handles authentication, token renewal, and token destruction upon program exit.\n\n🍻 [Tip me!](https://www.paypal.me/wh93?country.x=US\u0026locale.x=en_US)\n\n## Setup\nIn order to authenticate successfully with the Epic game servers, you must have an Epic Account, and Fortnite installed on the PC you are using. Two authentication tokens must be extracted on client and game launch.\n\nTo obtain header tokens:\n*   Install \u0026 Open [Fiddler 4](https://www.telerik.com/download/fiddler)\n*   In Tools -\u003e Options -\u003e HTTPS, enable \"Capture HTTPS CONNECTs\" and \"Decrypt HTTPS traffic\"\n*   Start your Epic Games Launcher.\n*   You will see a request with _/account/api/oauth/token_. Click on it and then click `Inspectors` tab to get the header (Copy `Authorization` header content and remove \"basic \") =\u003e **This header is your Launcher Token**\n*   Launch Fortnite\n*   You will see again a request with _/account/api/oauth/token_. Click on it and then click `Inspectors` tab to get the header (Copy `Authorization` header content and remove \"basic \") =\u003e **This header is your Game Token**\n\n## Usage\n\nSee [Godoc](https://godoc.org/github.com/henhouse/fortnite-go) for in-depth documentation.\n\n### Player Stats\nTo retrieve a player's information and statistics for Battle Royale:\n```go\n// Create the session.\nsess := fornitego.Create(\"USERNAME\", \"PASSWORD\", \"LAUNCHER-TOKEN\", \"GAME-TOKEN\")\n\n// Retrieve player info and stats by Username and Platform.\nplayer, err := s.QueryPlayer(\"PlayerName\", \"\", fornitego.PC) // (PC/Xbox/PS4)\nif err != nil {\n\tfmt.Println(err)\n}\n\n// Retrieve player info and stats by Account ID and Platform.\nplayer, err := s.QueryPlayer(\"\", \"AccountID\", fornitego.PC) // (PC/Xbox/PS4)\nif err != nil {\n\tfmt.Println(err)\n}\n```\nIf the player exists, a result may look like the example below. (Represented in JSON)\n```json\n{\n  \"AccountInfo\": {\n    \"AccountID\": \"6cd40c1722f2497fa1d2145b26da88e3\",\n    \"Username\": \"WalterJr2\",\n    \"Platform\": \"pc\"\n  },\n  \"Stats\": {\n    \"Solo\": {\n      \"Wins\": 23,\n      \"Top10\": 86,\n      \"Top25\": 154,\n      \"KillDeathRatio\": \"3.13\",\n      \"WinPercentage\": \"6.74\",\n      \"Matches\": 341,\n      \"Kills\": 995,\n      \"MinutesPlayed\": 2174,\n      \"KillsPerMatch\": \"2.92\",\n      \"KillsPerMinute\": \"0.46\",\n      \"Score\": 56247\n    },\n    \"Duo\": {\n      \"Wins\": 45,\n      \"Top5\": 89,\n      \"Top12\": 149,\n      \"KillDeathRatio\": \"3.27\",\n      \"WinPercentage\": \"11.03\",\n      \"Matches\": 408,\n      \"Kills\": 1186,\n      \"MinutesPlayed\": 1465,\n      \"KillsPerMatch\": \"2.91\",\n      \"KillsPerMinute\": \"0.81\",\n      \"Score\": 91499\n    },\n    \"Squad\": {\n      \"Wins\": 116,\n      \"Top3\": 190,\n      \"Top6\": 305,\n      \"KillDeathRatio\": \"3.60\",\n      \"WinPercentage\": \"14.23\",\n      \"Matches\": 815,\n      \"Kills\": 2516,\n      \"MinutesPlayed\": 3143,\n      \"KillsPerMatch\": \"3.09\",\n      \"KillsPerMinute\": \"0.80\",\n      \"Score\": 253462\n    }\n  }\n}\n```\n\n### Leaderboard\nTo retrieve the top 50 global wins leaderboard:\n```go\nlb, err := sess.GetWinsLeaderboard(fornitego.PC, fornitego.Squad) // (Solo, Duo, Squad)\nif err != nil {\n\tfmt.Println(err)\n}\n```\n\nA typical response would look like:\n```json\n[\n  {\n    \"DisplayName\": \"4hs_UwatakashiТV\",\n    \"Rank\": 1,\n    \"Wins\": 1131\n  },\n  {\n    \"DisplayName\": \"qoowill\",\n    \"Rank\": 2,\n    \"Wins\": 827\n  },\n  {\n    \"DisplayName\": \"RedemeЯ\",\n    \"Rank\": 3,\n    \"Wins\": 818\n  },\n  {\n    \"DisplayName\": \"Copy - TH\",\n    \"Rank\": 4,\n    \"Wins\": 801\n  },\n  {\n    \"DisplayName\": \"TTV.vannesskwan\",\n    \"Rank\": 5,\n    \"Wins\": 800\n  },\n  {\n    \"DisplayName\": \"BlooTeaTV\",\n    \"Rank\": 6,\n    \"Wins\": 789\n  },\n  {\n    \"DisplayName\": \"Twitch_PuZiiyo\",\n    \"Rank\": 7,\n    \"Wins\": 765\n  },\n  {\n    \"DisplayName\": \"Infamous Uniq\",\n    \"Rank\": 8,\n    \"Wins\": 680\n  },\n  {\n    \"DisplayName\": \"ŁїƒεSnoopySworld\",\n    \"Rank\": 9,\n    \"Wins\": 635\n  },\n  {\n    \"DisplayName\": \"tuổi lz sánh vai\",\n    \"Rank\": 10,\n    \"Wins\": 622\n  },\n  {\n    \"DisplayName\": \"SaltySoji\",\n    \"Rank\": 11,\n    \"Wins\": 620\n  },\n  {\n    \"DisplayName\": \"Fluuuuuuu\",\n    \"Rank\": 12,\n    \"Wins\": 619\n  },\n  {\n    \"DisplayName\": \"Faze_MadGames\",\n    \"Rank\": 13,\n    \"Wins\": 618\n  },\n  {\n    \"DisplayName\": \"Mafia WillzonePH\",\n    \"Rank\": 14,\n    \"Wins\": 618\n  },\n  {\n    \"DisplayName\": \"IDOLˆMrTìnhˆ\",\n    \"Rank\": 15,\n    \"Wins\": 609\n  },\n  {\n    \"DisplayName\": \"Twitch.DapanoTV\",\n    \"Rank\": 16,\n    \"Wins\": 607\n  },\n  {\n    \"DisplayName\": \"VIP. Trung Lương\",\n    \"Rank\": 17,\n    \"Wins\": 599\n  },\n  {\n    \"DisplayName\": \"Ĺαšt-Prince\",\n    \"Rank\": 18,\n    \"Wins\": 576\n  },\n  {\n    \"DisplayName\": \"DongminHero_o\",\n    \"Rank\": 19,\n    \"Wins\": 565\n  },\n  {\n    \"DisplayName\": \"TacoSlut.\",\n    \"Rank\": 20,\n    \"Wins\": 563\n  },\n  {\n    \"DisplayName\": \"Ĺαšt-ÐεÑz ツ\",\n    \"Rank\": 21,\n    \"Wins\": 554\n  },\n  {\n    \"DisplayName\": \"Pvt.alifrizani\",\n    \"Rank\": 22,\n    \"Wins\": 544\n  },\n  {\n    \"DisplayName\": \"Copy - 2 TAP\",\n    \"Rank\": 23,\n    \"Wins\": 543\n  },\n  {\n    \"DisplayName\": \"Death Donator\",\n    \"Rank\": 24,\n    \"Wins\": 538\n  },\n  {\n    \"DisplayName\": \"Pvt.Brokutt\",\n    \"Rank\": 25,\n    \"Wins\": 534\n  },\n  {\n    \"DisplayName\": \"ⓛⓞⓥⓔBetty-CosMix\",\n    \"Rank\": 26,\n    \"Wins\": 533\n  },\n  {\n    \"DisplayName\": \"Pre3idium\",\n    \"Rank\": 27,\n    \"Wins\": 528\n  },\n  {\n    \"DisplayName\": \"BC Mr.Spawnz\",\n    \"Rank\": 28,\n    \"Wins\": 528\n  },\n  {\n    \"DisplayName\": \"CTGS.TTâm SoNy\",\n    \"Rank\": 29,\n    \"Wins\": 525\n  },\n  {\n    \"DisplayName\": \"Early_Morning\",\n    \"Rank\": 30,\n    \"Wins\": 518\n  },\n  {\n    \"DisplayName\": \"Kreyzi\",\n    \"Rank\": 31,\n    \"Wins\": 516\n  },\n  {\n    \"DisplayName\": \"i7 - 1080 Ti\",\n    \"Rank\": 32,\n    \"Wins\": 510\n  },\n  {\n    \"DisplayName\": \"sunin-\",\n    \"Rank\": 33,\n    \"Wins\": 509\n  },\n  {\n    \"DisplayName\": \"1.0.1\",\n    \"Rank\": 34,\n    \"Wins\": 502\n  },\n  {\n    \"DisplayName\": \"Sarkanos\",\n    \"Rank\": 35,\n    \"Wins\": 492\n  },\n  {\n    \"DisplayName\": \"VexNguyen\",\n    \"Rank\": 36,\n    \"Wins\": 487\n  },\n  {\n    \"DisplayName\": \"eShield DoNtm1nd\",\n    \"Rank\": 37,\n    \"Wins\": 481\n  },\n  {\n    \"DisplayName\": \"Ninja O Ceifador\",\n    \"Rank\": 38,\n    \"Wins\": 480\n  },\n  {\n    \"DisplayName\": \"Fa_YeuVoBan\",\n    \"Rank\": 39,\n    \"Wins\": 473\n  },\n  {\n    \"DisplayName\": \"N68 3 .\",\n    \"Rank\": 40,\n    \"Wins\": 472\n  },\n  {\n    \"DisplayName\": \"K- Mày Tuổi Tôm\",\n    \"Rank\": 41,\n    \"Wins\": 471\n  },\n  {\n    \"DisplayName\": \"Oraculoo\",\n    \"Rank\": 42,\n    \"Wins\": 471\n  },\n  {\n    \"DisplayName\": \"i7 - 6700K\",\n    \"Rank\": 43,\n    \"Wins\": 466\n  },\n  {\n    \"DisplayName\": \"Fable Zamas\",\n    \"Rank\": 44,\n    \"Wins\": 464\n  },\n  {\n    \"DisplayName\": \"NoCry- arT.\",\n    \"Rank\": 45,\n    \"Wins\": 461\n  },\n  {\n    \"DisplayName\": \"TwitchTranq96\",\n    \"Rank\": 46,\n    \"Wins\": 457\n  },\n  {\n    \"DisplayName\": \"Twitch.ItsWiKKiD\",\n    \"Rank\": 47,\n    \"Wins\": 455\n  },\n  {\n    \"DisplayName\": \"이영돈\",\n    \"Rank\": 48,\n    \"Wins\": 455\n  },\n  {\n    \"DisplayName\": \"Mafia Chrism-\",\n    \"Rank\": 49,\n    \"Wins\": 455\n  },\n  {\n    \"DisplayName\": \"Infamous G0D\",\n    \"Rank\": 50,\n    \"Wins\": 454\n  }\n]\n```\n\n---\n### Special Thanks\nTo [qlaffont](https://github.com/qlaffont) for [fortnite-api](https://github.com/qlaffont/fortnite-api), which this project was largely based off of and inspired by.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenhouse%2Ffortnite-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenhouse%2Ffortnite-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenhouse%2Ffortnite-go/lists"}