v1.4.0
- Add friend code lookup and friend requests to the Electron app
- Fixed authenticating to the Nintendo Switch Online app API (#17)
- Nintendo updated the API on 23/08/2022 to properly validate the
timestamp
parameter sent in authentication requests. This change affects all software that authenticates to Nintendo's API automatically and requires an update to all clients andf
parameter generation APIs. More information. - Due to this change the flapg API is no longer supported immediately. It can still be used, however until it is updated authentication may not work reliably.
- Nintendo updated the API on 23/08/2022 to properly validate the
- Changed the default API for Coral client authentication to the imink API
This also applies to v1.3.0, unless remote configuration is disabled.- The splatnet2statink and flapg APIs can still be used by setting the
NXAPI_ZNCA_API
environment variable toflapg
, however the splatnet2statink API is deprecated and scheduled to be shut down by the end of 2022.
- Update Discord title configuration
- Friends last online timestamp now appears as a relative timestamp ("1 hour ago") and also appear in the friends list
- Update NookLink version
- Nintendo doesn't check this anyway, but this is now also fetched from my server so can be updated remotely.
- [Breaking change] When creating a
NooklinkApi
orNooklinkUserApi
object, a helper function should be used instead of calling the constructor directly- This matches the changes in v1.3.0 for
CoralApi
,MoonApi
andSplatNet2Api
, and is to prevent future updates breaking anything. - Added
NooklinkApi.createWithSavedToken(data: NooklinkAuthData)
, which takes thedata
object returned byNooklinkApi.createWithCoral
,NooklinkApi.loginWithCoral
andNooklinkApi.loginWithWebServiceToken
. - Added
NooklinkUserApi.createWithSavedToken(data: NooklinkUserAuthData)
, which takes thedata
object returned byNooklinkApi.createUserClient
. - Added
NooklinkUserApi.createWithCliTokenData(data: NooklinkUserCliTokenData)
, which takes the JSON-encoded data output fromnxapi nooklink user-token --json
.
- This matches the changes in v1.3.0 for
- Added compatibility with imink's API request format to the znca API server
- The
timestamp
parameter is no longer required and when not provided it will be generated and returned in the response. This parameter generally should not be provided to prevent causing issues when the value does not match the value that would be generated on the Android device/emulator. (#17) - Additionally the
request_id
/uuid
parameter is also no longer required and will be generated and returned in the response if not provided. This value is safe to generate on the client, but providing this in the response makes it easier to use the API in Paw and other HTTP clients.
- The
- Remove the
unidentified-script
user agent string when running the API proxy server - Prevent detecting running the nxapi command in an automated script when redirecting output
- Prevent making requests to match Nintendo's app's behaviour when not necessary
- Fix an issue where an error is thrown when handling errors in the packaged Electron app
- Fix an issue where multiple
f
parameter generation requests received by the znca API server at the same time result in invalid tokens being returned - Disable client hints for web services
- This is not available in Nintendo's app and exposes the true client platform.
- Fix an issue where standard OAuth 2.0/OpenID Connect errors from Nintendo are not handled properly
- Fix an issue where updating Nintendo Switch Online app data never completes
- Fix friend context menus not updating
- Fix some issues with X Rank season calculation
Build artifacts: https://gitlab.com/samuelthomas2774/nxapi/-/jobs/2930115184/artifacts/browse
Full changelog: v1.3.0...v1.4.0