Nexus Mods API released

  • Comment
Since we teased it back in October, our developers have been working hard on finalising the Nexus Mods API and today I'm pleased to report we’re ready to open the virtual doors to the public.


What is the Nexus Mods API?

It’s a set of instructions developers can use to access features and information from our service. We’ve been developing the API in parallel with Vortex to ensure it has a host of useful features. This is a more modern replacement to the ageing system applications like Nexus Mod Manager have been using for the last few years.


What can I do with the API? 

If you’re looking to make use of our data for a mod manager, Discord bot or integration into your game, you can view the full API documentation here. As a brief rundown of the features of the API you can:

Mods:

  • Get the latest, recently updated or trending mods.
  • Get mod metadata.
  • Get a list of files and file info on a mod.
Games:

  • Retrieve a complete list of games.
  • Get information on a specific game.
Users:

  • Users can log in to your application with their Nexus Mods account via their API key or our Single sign-on (SSO) page.
  • Manage tracked and endorsed mods on a user’s account. 




Keys! Clinky shiny keys!

When using an app that talks to our API, you’ll need an API key. We’ve added a new page to your user account settings where you can see your keys to different apps or request a unique one for your user account.


Will this break my current mod manager?

If you’re currently using Nexus Mod Manager, Mod Organizer or another app that uses the old method of getting data from us, you won’t see any change immediately. We have already reached out to the developers of some of the key modding tools that use the old service and will be consulting with them in their efforts to migrate to the new API. 

We are giving notice that the old system will be switched off 3 months from today (Monday, 13th May 2019). This should give developers plenty of time to update their apps to the new API method. After this point, you can still continue to use any software that has not been updated, but you will have to install your mods manually.


Registering my app

If you're creating an app which takes advantage of our API, you can contact the Community Managers (BigBizkit or Pickysaurus) to get your application approved. Only approved applications will be able to use the Single sign-on (SSO). 

You can also ask the user to enter their Personal API Key from the API Access page in their settings in order to log into your app - this method does not require approval. 


Feedback, support and suggestions

We’ve opened up a new channel on the Nexus Mods Discord server dedicated to all things API. If you are having problems using the API or have suggestions on how it can be improved, you can get in touch with us through the Discord or email us

42 comments

  1. Thandal
    Thandal
    • Moderator
    • 22,510 posts
    • 170 kudos
    @Moksha8088;  No one here at the Nexus is working on NMM.  Period.
    So no one here can provide the confirmation you're seeking.

  2. Moksha8088
    Moksha8088
    • supporter
    • 6,226 posts
    • 48 kudos
    There is a blurb about the new API change at the GitHub NMM site.  I wish someone would update it and confirm they are working on making NMM compliant or state they throwing in the towel and capitulating to Vortex.  "Yeah, we give in.  Let there be one manager to rule them all and to Nexus bind them".
  3. votemarvel
    votemarvel
    • premium
    • 101 posts
    • 1 kudos
    I didn't like the user interface of Vortex when it was in beta and I don't like it any more now. I guess I'm going to have to get everything setup mod wise for my games with NMM and then image the drive before it potentially gets disabled.

    Then again I still don't like the site redesign either, so what do I know.
  4. al12rs
    al12rs
    • premium
    • 373 posts
    • 28 kudos
    Congrats for the release!

    As people on the Mod Organizer 2 discord know, we are already testing dev builds with the new API, so you can rest assured MO2 will get an update in time to support the change. (It has been in the works already for a while)

    About MO1, there hasn't been any discussion yet about updating it. Since the update does take quite a considerable amount of time an effort, it could be that there is no one with enough free time to dedicate to it.
    1. Moksha8088
      Moksha8088
      • supporter
      • 6,226 posts
      • 48 kudos
      Wondering if the tried, true, and trustworthy Nexus Mod Manager found on GitHub will also be updated with this feature?
    2. al12rs
      al12rs
      • premium
      • 373 posts
      • 28 kudos
      There are sill people that are fond of NMM, despite the fact that that it's no longer supported. I do believe someone of the long term fans might update it, even though I personally don't agree on that trustworthiness statement.
      Like with MO1 it all depends on whether there is someone there willing to put in the time and effort.
      Nexus staff will, understandably, not update NMM.
    3. ff7legend
      ff7legend
      • premium
      • 16,592 posts
      • 240 kudos
      Yours truly is sticking with NMM for the simple fact that any attempt to migrate a 1,000+ Active Mods installation from NMM to Vortex is sure to FAIL on an EPIC SCALE. I'm not about to play literal Russian roulette with my modded Skyrim SE installation. Hopefully NMM will be updated to support the new API at some point since I cannot migrate my entire modded install from NMM to Vortex.
    4. Silarn
      Silarn
      • premium
      • 162 posts
      • 11 kudos
      BardicKnowledge is, I believe, the main maintainer of NMM and he's well aware of the changes and has been informed along with the rest of us. I assume he will be updating it at some point.
    5. ff7legend
      ff7legend
      • premium
      • 16,592 posts
      • 240 kudos
      I sure hope so. I cannot & will not migrate to Vortex due to the sheer size/scope of my modded Skyrim SE installation.
    6. CLYung
      CLYung
      • member
      • 1 posts
      • 0 kudos
      I'm fighting the hassle now with it. NMM will no longer download mods on my computer so I tried to migrate to Vortex.

      ALL of the mods I was using are now F.U.B.A.R. and I'm going to have to start all over. Vortex has pissed all over my system and now I have to go through all directories to find files that I must now remove so that I will be able to again play FO4

      Thank You NEXUS for shutting down NMM from downloading updated files!
    7. DFX2K9
      DFX2K9
      • supporter
      • 53 posts
      • 0 kudos
      I can feel pain for those uses NMM because of huge mod installs.

      I happened to switch over to vortex at a time where I already wanted to reinstall everything fresh, so the inconvenience was a given. And I've never installed more then a few dozen mods at a time, a habit I got from NMM because it seemed not to like going big whenever I tried.
  5. Thandal
    Thandal
    • Moderator
    • 22,510 posts
    • 170 kudos


    I don't quite understand this. Is the only reason this new (API) is being introduced is because of Vortex?


     
    It's being introduced so that others can write small programs of their own that interact with (some of) the Nexus data the way Vortex can.  Some of those programs might extend or enhance the capabilities of Vortex, but that's up to those who write them. 
    1. DFX2K9
      DFX2K9
      • supporter
      • 53 posts
      • 0 kudos
      I'm glad you mentioned games being able to use this as well. Because I've fiddled around with a number of IDEs as a hobby. And one of the things I thought would be cool to do would be to make the game Nexus/Vortex-aware to some extent in the way Steam Workshop games are for the workshop.

      Like, if someone boots up the game without booting Vortex, the game can go check for mod updates and let the user know. That's super handy.

      That password verification is also EXTREMELY nice, since it takes a lot of the security-load off of the application developer who wants to do that kind of integration. Props for this in particular.
  6. WishkahKid
    WishkahKid
    • member
    • 42 posts
    • 1 kudos
    I don't quite understand this. Is the only reason this new (API) is being introduced is because of Vortex?
  7. BrinaSair
    BrinaSair
    • member
    • 208 posts
    • 25 kudos


     
    In response to post #67632606. #67634316, #67634966, #67636786, #67637301, #67650701 are all replies on the same post.


    Spoiler:  
    Show

    We do a lot of trickery to get around the api limit. Like using a single call to get list of mods that have been modified in the last moth and cross referencing those with your modlst. Another thing is that all mods with the same nexus mod id (so patches, duplicated mods etc) will only be checked once.
    But your setup seems like it would be a really great stress test for the dev build, to determine if indeed the limits are too harsh, and if we can improve things on our end.
    We did for example add an option to updateCheck a single mod (right click menu).
    Here is the link to the discord server with the dev builds: https://discord.gg/6GKR9jZ
     


     
    Okay, knowing that MO2 can query which mods have updated within the last month relieves most of my worries. If I only have to worry about mods that have updated within the last month then the worst case scenario is when Skyrim SE updates in a manner that requires most mods with a dll to update, and that would be less than 100 (currently about 60 or 70, I think). It is also nice to know that a means is being developed to check some mods for update without checking every mod. Between these I no longer see a 2500 / day limit ever causing an issue.
  8. MrJohn
    MrJohn
    • premium
    • 181 posts
    • 9 kudos
    What is the reasoning for the user-rate limiting?
    1. DoctorKaizeld
      DoctorKaizeld
      • premium
      • 8,540 posts
      • 44 kudos
      what user rate limiting?
    2. al12rs
      al12rs
      • premium
      • 373 posts
      • 28 kudos
      The new API features an account based limit of 2500 daily requests, after which you get an extra 100 each hour.
      If you are with no requests left, all nexus requests are blocked (this includes downloading manually).
      Downloading a file is 2-3 requests, checking a mod for file updates is 1-2 requests. Logging In uses requests as well.

      Limiting API calls is standard procedure to avoid overloading servers with requests, slowing them down. Otherwise the API functionality might get compromised for everyone because someone is abusing it.
      This particular implementation is pretty simplistic, but should serve it's purpose well.
      Nexus staff mentioned that they are monitoring usage and will adjust the limits in case they deem it necessary.
    3. DoctorKaizeld
      DoctorKaizeld
      • premium
      • 8,540 posts
      • 44 kudos
      Ooooh that
    4. damanding
      damanding
      • premium
      • 3,872 posts
      • 137 kudos
      Among other things it slows down file scraping from people downloading all mods in mass to illegally host on their own sites.
    5. BrinaSair
      BrinaSair
      • member
      • 208 posts
      • 25 kudos
      In response to post #67632606. #67634316, #67634966, #67636786, #67637301 are all replies on the same post.


      Spoiler:  
      Show

      I admit this is concerning to me. I check for mod updates through MO2 about once a week. My understanding was that this is just a ping to see if the current version is the same as the version on my computer. But from what you are saying the API will treat this the same as attempting to download the entire mod for every mod managed by MO2, whether it needs an update or not and whether the mod is currently being used or not.

      Per MO2 I currently have ~3400 mods for Skyrim SE and almost 1900 for Fallout 4. The vast majority are not being used, but MO2 lists them regardless. MO2 has only one means of checking for updates - a clickable link labelled "Check all for update". It is not possible to select a sub-set or selection of mods to check - all of the mods listed in MO2 are checked. So I cannot, for example, check only half one day and half another day. Now, I already have separate installations of MO2 for Skyrim SE and Fallout 4, so I should not have any issues with Fallout 4 if the user limit is 2500. I also usually check the two of them for updates on different days, so again there is no real issue with Fallout 4.

      But for Skyrim this means that I will be locked out of nexus before the check for updates is even finished, let alone before I can start going to the nexus pages to see about downloading said updates. I don't mind being limited in how many files or how many MB I can download per day or even per hour - that is entirely reasonable. But counting checks of the current version as downloads - even when the versions match - just seems incredibly unreasonable.
    6. al12rs
      al12rs
      • premium
      • 373 posts
      • 28 kudos
      We do a lot of trickery to get around the api limit. Like using a single call to get list of mods that have been modified in the last moth and cross referencing those with your modlst. Another thing is that all mods with the same nexus mod id (so patches, duplicated mods etc) will only be checked once.
      But your setup seems like it would be a really great stress test for the dev build, to determine if indeed the limits are too harsh, and if we can improve things on our end.
      We did for example add an option to updateCheck a single mod (right click menu).
      Here is the link to the discord server with the dev builds: https://discord.gg/6GKR9jZ
    7. MrMason
      MrMason
      • Director of Programming
      • 215 posts
      • 10 kudos
      The limits we've put in place are our first 'best guess' at what is reasonable. If we find that legitimate users are having problems then we are fully on board with changing the limits.
  9. matortheeternal
    matortheeternal
    • premium
    • 4,248 posts
    • 434 kudos
    It'd be great if the 200 responses would be documented through swagger so we can know the data format to expect for a successful request without having to actually test the request ourself. I'm happy to help out with adding that if the Nexus Staff don't feel like they don't have time to add it themselves.

    I must say that this change really makes it feel like Nexus Mods has moved forward in supporting developers of third party tools. It's a great step to take and I wholeheartedly approve.
  10. printerkop
    printerkop
    • supporter
    • 3,220 posts
    • 96 kudos
    Some nice stuff, but i sure hope the FOMM fork stays Fallout only and not use this to integrate more games into it.
    I like my software as clean as possible, and i don't play other modded games.

    I don't think they will do that anyway though, but the release of API's like this always make me feel a bit uncomfortable as to what's going to happen with some mod managers.

    Ofcourse i'm not the only person in the world, so if they do i just have to keep using an older version.

    Or make my own local manager with C#
Top