WARFRAME Wiki

Read about the future of the Fandom platform and the WARFRAME wiki! Any feedback would be appreciated! User blog:Cephalon Scientia/2022 Fandom Community Connect. - 06:11, 6 June 2022 (UTC)

READ MORE

WARFRAME Wiki
Advertisement
WARFRAME Wiki
Sgt Nef AnyoIcon.png
“Orokin secrets cannot remain secret forever! Start talking!”
The following article/section is conjecture. Content is subjected to change/removal as the game progresses. Please do not use this article for critical in-game information.

Mobile Export (also known as Public Export) refers to a public endpoint hosted by Digital Extremes that is used to feed internal data to Warframe Nexus, the official mobile companion app for WARFRAME, the Warframe Arsenal Twitch Extension, and the game itself. Note that the wiki is not responsible for any malicious use of this data. Any data extracted should be used for informational purposes only and does not necessarily represent the current and future state of the game. Content is subjected for removal as the game updates so please do not use this for speculative reasons.

Details[]

To get data from the mobile export you need to access two servers:

You start with the language-specific index from the origin server eg: https://origin.warframe.com/PublicExport/index_<language_code>.txt.lzma

NOTE: After downloading the root index all further requests must be to the content server: http://content.warframe.com/PublicExport/

You should use HTTPS for the origin index but both HTTP and HTTPS will work for the content server. Since HTTP enables local caches to optimize download, the developers generally advise people to only use HTTPS for content when needed (the launcher setting "Allow Network Caches" controls this for the game itself).[1]

The data obtained from the Mobile Export will be in the form of a JSON file. Note that the index file is compressed using Lempel–Ziv–Markov chain algorithm (LZMA:24).

This index file contains the hashed names of all the manifests data you can get from http://content.warframe.com/PublicExport/Manifest/.

For example, you it might list ExportWeapons_en.json!00_HghAEHejKwa2JJrj9gZW3g and the full URL for that would be http://content.warframe.com/PublicExport/Manifest/ExportWeapons_en.json!00_HghAEHejKwa2JJrj9gZW3g

Note that the 26 character hash (e.g. !00_uxbrm+cu3HU-I5yyC7wXSw) at the end of file names will change every time the developers update the manifest, thus clients will need to access the index file frequently in order to get the latest endpoint for a particular file. You can safely cache any hashed asset forever (and the CDN does exactly this) because if the file contents change it will get a new hashed name.

Available Languages[]

Depending on the language code used, the name, description, levelStats keys of most content will be localized to the appropriate locale. The API supports all of WARFRAME's officially supported languages.

Code Language
de German
en English
es Spanish (Spain)
fr French
it Italian
ja Japanese
ko Korean
pl Polish
pt Portuguese (Brazil)
ru Russian
tc Chinese (Traditional)
th Thai
tr Turkish
uk Ukrainian
zh Chinese (Simplified)

Available Content[]

Extracting Images[]

ExportManifest.json has every item's uniqueName paired with a textureLocation. textureLocation can be added to the end of http://content.warframe.com/PublicExport/ to get the item's image asset.

  • Most assets will be 512 by 512 pixels in dimensions
  • Mod images will be 256 by 256 pixels however

Third-party usage of these assets must comply to WARFRAME's Content Policy.


For example, as of Hotfix 31.1.8 (2022-02-24) (after change from rectangle icons to squares in Update 31.1 (2022-02-09)), the following link is valid to get Lato.png Lato's latest image http://content.warframe.com/PublicExport/Lotus/Interface/Icons/StoreIcons/Weapons/SecondaryWeapons/Weapons/Lato.png!00_Klh0iT5bMhtA5785r1FM6w

{
    "uniqueName":"/Lotus/Weapons/Tenno/Pistol/Pistol",
    "textureLocation":"/Lotus/Interface/Icons/StoreIcons/Weapons/SecondaryWeapons/Weapons/Lato.png!00_Klh0iT5bMhtA5785r1FM6w"
}

Since WARFRAME's CDN caches any hashed asset forever, if the URL to older assets are known, they can still be accessed. For example, as of Hotfix 30.7.6 (2021-09-23) the following link is valid to get Lato.png Lato's old image: http://content.warframe.com/PublicExport/Lotus/Interface/Icons/Store/Pistol.png!00_l6qtnhCRgAMSyjjAp1RdVQ

{
    "uniqueName":"/Lotus/Weapons/Tenno/Pistol/Pistol",
    "textureLocation":"/Lotus/Interface/Icons/Store/Pistol.png!00_l6qtnhCRgAMSyjjAp1RdVQ"
}

Weapons Schema[]

Guns[]

  • "name" {string} Weapon name in all caps
  • "uniqueName" {string} Relative path to weapon data
  • "codexSecret" {boolean} Whether or not weapon is hidden from Codex if player does not have it
  • "damagePerShot" {float[]} A 20-element array of floats representing individual damage type values in the following order:
  • "totalDamage" {float} Total Damage
  • "description" {string} Weapon description
  • "criticalChance" {float} Weapon Critical Chance
  • "criticalMultiplier" {float} Weapon Critical Multiplier
  • "procChance" {float} Weapon Status Chance
  • "fireRate" {float} Weapon Fire Rate
  • "masteryReq" {int} Mastery Rank requirement
  • "productCategory" {string} Weapon's product category ("Pistols", "LongGuns", "Melee", "SpaceGuns", "SpaceMelee", "SpecialItems", "CrewShipWeapons")
  • "excludeFromCodex" {boolean} Whether or not weapon will appear in Codex
  • "slot" {int} Weapon's slot number (0 for secondaries, 1 for primaries/Arch-guns, 5 for melees/Arch-melees, 7 for Exalted Weapons, 13 for Railjack armaments)
  • "accuracy" {float} Weapon accuracy rating
  • "omegaAttenuation" {float} Weapon Riven Mod disposition
  • "maxLevelCap" {int} Weapon's max rank, reserved for Kuva and Tenet weapons
  • "noise" {string} Weapon's Noise Level in all caps
  • "trigger" {string} Weapon's Trigger Type in all caps
  • "magazineSize" {int} Weapon's Magazine Capacity
  • "reloadTime" {float} Weapon's Reload time
  • "sentinel" {boolean} Whether or not weapon is a Robotic Weapon
  • "multishot" {int} Weapon's base Multishot

Sample:

{
    "name":"MARA DETRON",
    "uniqueName":"/Lotus/Weapons/VoidTrader/VTDetron",
    "codexSecret":true,
    "damagePerShot":[0,0,0,0,0,0,0,0,40,0,0,0,0,0,0,0,0,0,0,0],
    "totalDamage":40,
    "description":"For Orokin-era smugglers, this fearsome handheld shotgun was a favored tool for 'dispute resolution'.",
    "criticalChance":0.079999998,
    "criticalMultiplier":1.5,
    "procChance":0.1371429,
    "fireRate":3.3333335,
    "masteryReq":9,
    "productCategory":"Pistols",
    "slot":0,
    "accuracy":13.333333,
    "masteryReq":9,
    "omegaAttenuation":1.1,
    "noise":"ALARMING",
    "trigger":"SEMI",
    "magazineSize":8,
    "reloadTime":1.05,
    "multishot":7
}

Melee[]

  • "name" {string} Weapon name in all caps
  • "uniqueName" {string} Relative path to weapon data
  • "codexSecret" {boolean} Whether or not weapon is hidden from Codex if player does not have it
  • "damagePerShot" {float[]} A 20-element array of floats representing individual damage type values in the following order:
  • "totalDamage" {float} Total Damage
  • "description" {string} Weapon description
  • "criticalChance" {float} Weapon Critical Chance
  • "criticalMultiplier" {float} Weapon Critical Multiplier
  • "procChance" {float} Weapon Status Chance
  • "fireRate" {float} Weapon Attack Speed
  • "masteryReq" {int} Mastery Rank requirement
  • "productCategory" {string} Weapon's product category ("Pistols", "LongGuns", "Melee", "SpaceGuns", "SpaceMelee", "SpecialItems", "CrewShipWeapons")
  • "excludeFromCodex" {boolean} Whether or not weapon will appear in Codex
  • "slot" {int} Weapon's slot number (0 for secondaries, 1 for primaries/Arch-guns, 5 for melees/Arch-melees, 7 for Exalted Weapons, 13 for Railjack armaments)
  • "omegaAttenuation" {float} Weapon Riven Mod disposition
  • "maxLevelCap" {int} Weapon's max rank, reserved for Kuva and Tenet weapons
  • "blockingAngle" {int} Melee's blocking angle
  • "comboDuration" {int} Melee Combo duration
  • "followThrough" {float} Melee's follow through
  • "range" {float} Melee's range
  • "slamAttack" {float} Melee's direct slam attack damage
  • "slamRadialDamage" {float} Melee's radial slam attack damage
  • "slamRadius" {float} Melee's slam radius
  • "slideAttack" {float} Melee's slide attack damage
  • "heavyAttackDamage" {float} Melee's heavy attack damage
  • "heavySlamAttack" {float} Melee's heavy direct slam attack damage
  • "heavySlamRadialDamage" {float} Melee's heavy radial slam attack damage
  • "heavySlamRadius" {float} Melee's heavy slam radius
  • "windUp" {float} Melee's heavy attack wind-up time

Sample:

{
    "name":"SKANA",
    "uniqueName":"/Lotus/Weapons/Tenno/Melee/LongSword/LongSword",
    "codexSecret":false,
    "damagePerShot":[18,18,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
    "totalDamage":120,
    "description":"Before all other weapons, Tenno master the Skana. This simple blade becomes immensely powerful in the hands of a master. For Tenno, it is the foundation of their fighting style and a pillar of their culture.",
    "criticalChance":0.050000001,
    "criticalMultiplier":1.5,
    "procChance":0.15999997,
    "fireRate":0.83333337,
    "masteryReq":0,
    "productCategory":"Melee",
    "slot":5,
    "omegaAttenuation":1.3,
    "blockingAngle":55,
    "comboDuration":5,
    "followThrough":0.60000002,
    "range":2.5,
    "slamAttack":360,
    "slamRadialDamage":120,
    "slamRadius":7,
    "slideAttack":120,
    "heavyAttackDamage":600,
    "heavySlamAttack":480,
    "heavySlamRadialDamage":480,
    "heavySlamRadius":8,
    "windUp":0.60000002
}

Upgrades Schema[]

Excluding Riven Mods and their challenges:

  • "uniqueName" {string} Relative path to upgrade data
  • "name" {string} Upgrade name
  • "polarity" {string} Polarity of upgrade using internal names
  • "rarity" {string} Upgrade rarity in all caps
  • "codexSecret" {boolean} Whether or not upgrade is hidden from Codex if player does not have it
  • "baseDrain" {int} Base capacity drain
  • "fusionLimit" {int} Maximum number of ranks
  • "excludeFromCodex" {boolean} Whether or not upgrade will appear in Codex
  • "isUtility" {boolean} Whether or not upgrade can be fitted in Exilus slot
  • "compatName" {string} Name of item that the upgrade can be equipped as seen on card description in all caps (e.g. "WARFRAME", "VULKAR", "OBERON", "NECRAMECH", "PISTOL (NO AOE)", "POLEARMS")
  • "type" {string} Name of class of upgrades that it belongs to in all caps (e.g. "WARFRAME", "PRIMARY", "ARCHWING", "STANCE")
  • "description" {string[]} String array containing upgrade description(s)
  • "subtype" {string} For augment mods, the relative path to Warframe
  • "levelStats" {Object[]} Array of JSON objects, each containing the upgrade description (not actual value) at a particular rank

Sample:

{
    "uniqueName":"/Lotus/Upgrades/Mods/Warframe/Expert/AvatarKnockdownResistanceModExpert",
    "name":"Primed Sure Footed",
    "polarity":"AP_DEFENSE",
    "rarity":"LEGENDARY",
    "codexSecret":true,
    "baseDrain":6,
    "fusionLimit":10,
    "isUtility":true,
    "compatName":"WARFRAME",
    "type":"WARFRAME",
    "levelStats":[
        {"stats":["+9% Chance to Resist Knockdown"]},
        {"stats":["+18% Chance to Resist Knockdown"]},
        {"stats":["+27% Chance to Resist Knockdown"]},
        {"stats":["+36% Chance to Resist Knockdown"]},
        {"stats":["+45% Chance to Resist Knockdown"]},
        {"stats":["+55% Chance to Resist Knockdown"]},
        {"stats":["+64% Chance to Resist Knockdown"]},
        {"stats":["+73% Chance to Resist Knockdown"]},
        {"stats":["+82% Chance to Resist Knockdown"]},
        {"stats":["+91% Chance to Resist Knockdown"]},
        {"stats":["+100% Chance to Resist Knockdown"]}
    ]
}

Riven Mods[]

  • "uniqueName" {string} Relative path to upgrade data
  • "name" {string} Upgrade name
  • "polarity" {string} Polarity of upgrade using internal names
  • "rarity" {string} Upgrade rarity in all caps
  • "codexSecret" {boolean} Whether or not upgrade is hidden from Codex if player does not have it
  • "baseDrain" {int} Base capacity drain
  • "fusionLimit" {int} Maximum number of ranks
  • "excludeFromCodex" {boolean} Whether or not upgrade will appear in Codex
  • "upgradeEntries" {Object[]} Array of objects containing all possible stats
  • "availableChallenges" {Object[]} Array of objects containing all possible challenges and their additional modifiers ("complications")

Sample Riven Mod:

{
    "uniqueName":"/Lotus/Upgrades/Mods/Randomized/LotusModularRifleRandomModRare",
    "name":"DO NOT USE",
    "polarity":"AP_UNIVERSAL",
    "rarity":"COMMON",
    "codexSecret":true,
    "baseDrain":-1295140757,
    "fusionLimit":32764,
    "excludeFromCodex":true,
    "upgradeEntries":[...],
    "availableChallenges":[...]
}

Sample stat:

{
    "tag":"WeaponArmorPiercingDamageMod",
    "prefixTag":"insi",
    "suffixTag":"cak",
    "upgradeValues":[{"value":0.01333,"locTag":"|val|% <DT_PUNCTURE>Puncture"}
}

Sample challenge:

{
    "fullName":"/Lotus/Types/Challenges/RandomizedKill",
    "description":"Kill |COUNT| Enemies",
    "complications":[...]
}

Sample challenge complication:

{
    "fullName":"/Lotus/Types/Challenges/Complications/ResetOnAlarmRaised",
    "description":"without raising any alarms",
    "overrideTag":"Get |COUNT| kills in a row while Wall Dashing or Wall Latching without touching the floor or raising any alarms"
}

References[]

  1. Miner, Glen (2022, February 22). Changes: Mobile Export. Accessed 2022-02-26. Archived from the original on 2022-02-26. The exact edit in which this change was added from [DE]Glen himself.

External Links[]

See Also[]


Advertisement