Dedicated server account
If you don't want to or can't use a Ubisoft account for authentication, you can use a dedicated server account. Note that there are some limitations on what you can do with dedicated server tokens (as noted on relevant API endpoint documentation pages).
Setting up a dedicated server account
A dedicated server account is always bound to a Ubisoft account. Visit Trackmania.com's dedicated servers page to create a dedicated server account.
Make sure to store the password after creating your account as it can't be retrieved again later.
Note that your dedicated server account is directly associated to a Ubisoft account - if Nadeo/Ubisoft detect API usage they deem unacceptable, restrictions or bans on your dedicated server account may also have consequences for your associated Ubisoft account.
Acquiring a Nadeo API access token
Send the following HTTP request using a tool/library of your choice:
POST https://prod.trackmania.core.nadeo.online/v2/authentication/token/basic
Headers:
Content-Type: application/json
Authorization: Basic <login:password (base64-encoded)>
User-Agent: <your project/contact information>
Body:
{ "audience": "NadeoLiveServices" }
The Authorization
header uses Basic HTTP authentication for your dedicated server account credentials (e.g. username:password
becomes Basic dXNlcm5hbWU6cGFzc3dvcmQ=
).
In Go for example, this is done via SetBasicAuth - other languages and libraries have their own utility methods for the same purpose.
The body of the request must be a JSON object with the desired audience name. The audience(s) you need depend on the APIs and endpoints you intend to interact with.
URL | Audience |
---|---|
https://prod.trackmania.core.nadeo.online/ | NadeoServices |
https://live-services.trackmania.nadeo.live/ | NadeoLiveServices |
https://meet.trackmania.nadeo.club | NadeoLiveServices |
Note that if you don't provide a body, you get a token for the audience NadeoServices
.
If you plan to interact with API endpoints that require different audiences, you need to request multiple tokens and manage them separately.
Next steps
The response body contains an access_token
and a refresh_token
which you can use for your API requests. See the token usage guide for information on how to use and manage tokens.