Get Started
Prerequisites
As described in the introduction, you will need credentials for two different authentication methods:
- A valid API key, which is used to identify the application consuming the GoNow API
- New Skies agent credentials, used to authenticate against the New Skies platform and obtain a session token
Also take into account that the production environment is guarded against unapproved IPs.
API URLs
Two different URLs for the GoNow API are offered on the TUI backend:
| Environment | URL | Comment |
|---|---|---|
| Playground | https://playground.api.tui/flight/newskies/gonow | Playground/Test environment, used for your development |
| Prod | https://prod.api.tui/flight/newskies/gonow | Production environment, allows production workloads only |
Authentication
The GoNow API does not have its own authentication endpoint. Instead, you must first obtain a session token from the New Skies Digital API token endpoint, and then use that token when calling GoNow endpoints.
Step 1: Set the API Key
The API key is set on each request as a header field, x-apikey. You can find your API key on the developer.tui portal under your registered application's CONSUMER KEY field.
Step 2: Obtain a Session Token
Authenticate against the New Skies platform by calling the Digital API token endpoint. The received token is then required on all GoNow API requests.
New Skies request token body payload
{
"credentials": {
"username": "YourUserName",
"password": "YourPassword",
"domain": "EXT"
}
}
Setting the environment variables with your credentials
export X_API_KEY="yourApiKey"
export NEWSKIES_USERNAME="yourAgentName"
export NEWSKIES_PASSWORD="yourAgentPassword"
Curl request to the Token endpoint to create a new session
curl --location "https://playground.api.tui/flight/newskies/rest/api/auth/v1/token/user" \
--header "Content-Type: application/json" \
--header "x-apikey: ${X_API_KEY}" \
--data "{
\"credentials\": {
\"username\": \"${NEWSKIES_USERNAME}\",
\"password\": \"${NEWSKIES_PASSWORD}\",
\"domain\": \"EXT\"
}
}"
Example Response
{
"data": {
"token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"cultureCode": "de-DE",
"currencyCode": "EUR",
"roleCode": "AIRM",
"locationCode": "HQ",
"domainCode": "EXT",
"organizationCode": "X3",
"expires": "2024-09-16T08:47:01Z",
"userKey": "ExampleUserKey",
"personKey": "ExamplePersonKey"
}
}
Extract the token string from the response — this is required on each subsequent GoNow API request.
Step 3: Call GoNow Endpoints
Once the token is obtained, all GoNow API requests must include the following headers:
| Header | Value | Comments |
|---|---|---|
| x-apikey | {Application API key} | API key obtained from the developer.tui portal |
| Authorization | Bearer {token} | Token obtained from the Digital API token endpoint |
Example: Retrieve DCS token information
curl --location "https://playground.api.tui/flight/newskies/gonow/api/dcs/v1/token" \
--header "Authorization: Bearer ${TOKEN}" \
--header "x-apikey: ${X_API_KEY}"
This endpoint returns token-based information about the current user that is commonly used by DCS applications, confirming that your session is valid.
Correlation-Id
A correlation-id is a unique identifier (such as a GUID) used to trace and link all related requests and responses in a system. It helps developers track the flow of a request through different services, making it easier to debug and monitor.
To make use of correlation-id, provide any string value via the x-correlation-id header:
curl --location "https://playground.api.tui/flight/newskies/gonow/api/dcs/v1/token" \
--header "Authorization: Bearer ${TOKEN}" \
--header "x-apikey: ${X_API_KEY}" \
--header "X-Correlation-Id: 54bfa520-4586-46a9-8409-e6a4ea402451"
When you provide the same correlation-id within a workflow, we will be able to trace your requests and troubleshoot more effectively.
Further Reading
Continue with the Check-in Workflow page to learn how to perform passenger check-in using the GoNow API.
