Traveloka · Authentication Profile
Traveloka Authentication
Authentication
Traveloka secures its APIs with oauth2, apiKey, and http across 0 declared security schemes, as derived from its OpenAPI definitions.
travelonline-travel-agencyaccommodationhotel-bookingflightsactivitieshospitalitydistributionchannel-manageropentravelsoutheast-asiaindonesia
Methods: oauth2, apiKey, http
Schemes: 0
OAuth flows:
API key in: header
Security Schemes
Source
Authentication Profile
generated: '2026-08-05'
method: searched
source: >-
https://developer.travelokapartnersnetwork.com/faq +
https://developer.travelokapartnersnetwork.com/api-docs (LOKA API v2.4.8 OpenAPI) +
https://atlas.traveloka.com/developers/docs/ (Traveloka Specification API) +
https://developer.connect.traveloka.com/api-doc/credentials/url/
docs: https://developer.travelokapartnersnetwork.com/api-docs
summary:
types: [oauth2, apiKey, http]
api_key_in: [header]
note: >-
Three distinct Traveloka API surfaces use three distinct auth models. The published LOKA v2 OpenAPI
declares its bearer credential as an apiKey-in-header scheme (an AWS API Gateway Lambda authorizer),
but the documented way to MINT that credential is an OAuth 2.0 client-credentials exchange. Both
facts are recorded below; neither is inferred.
apis:
- api: Traveloka Partners Network (LOKA) v2 Accommodation API
primary: oauth2_client_credentials
token_endpoint: https://auth-api.afc.traveloka.com/oauth/accesstoken
staging_token_endpoint: https://auth-api.afc.staging-traveloka.com/oauth/accesstoken
method: POST
request_media_type: application/x-www-form-urlencoded
credential_fields: [client_id, client_secret]
response_fields: [token_type, access_token, expires_in]
response_schema: AccessToken
token_lifetime_minutes: 60
token_reuse: >-
Reuse until expiry. The provider FAQ explicitly discourages minting a token per call.
transport:
header: Authorization
location: header
note: >-
The spec models this as securityScheme api_gateway_lambda_authorizer (type apiKey, in header,
name Authorization) fronted by an AWS API Gateway custom Lambda authorizer with a 1800-second
authorizer result TTL.
expiry_signal:
status: 401
code: '401'
message: Unauthorized, the token might be expired.
remediation: Re-issue via POST /oauth/accesstoken with the original client_id and client_secret.
additional_scheme:
name: sigv4
type: apiKey
in: header
parameter: Authorization
x-amazon-apigateway-authtype: awsSigv4
note: >-
Declared in components.securitySchemes but not applied to any operation in the published spec.
scopes:
declared: ['auth']
note: >-
The spec's root security requirement is [{"OAuthStaging": ["auth"]}] but "OAuthStaging" is not
defined in components.securitySchemes - a dangling reference in the published document. No scope
reference page is published, so no scopes/ artifact is emitted.
credential_issuance:
model: approval
steps:
- Choose a partnership model.
- Register via the Become Partner form.
- Formalize the partnership to receive unique site credentials.
- Request certification from the Traveloka connectivity team.
- Promote to the live environment.
form: https://traveloka.sg.larksuite.com/share/base/form/shrlg7CyVohw5GHPRXwt8LdPCCW
contact: partnersnetwork@traveloka.com
self_serve: false
- api: Traveloka Atlas - Traveloka Specification API (supplier-implemented)
primary: http_basic
scheme: basic
format: base64(username:password)
header: 'Authorization: Basic <base64>'
transport_requirement: HTTPS on port 443
direction: >-
Inverted. Traveloka is the CLIENT; the accommodation supplier hosts these endpoints and validates
the Basic credential Traveloka presents.
source_scheme: basicAuth
sources: [openapi/traveloka-atlas-supplier-api-openapi.yml]
- api: Traveloka Connect - Connectivity API (OTA 2017B XML)
primary: partner_credentials
base_url: https://api.connect.traveloka.com/
staging_base_url: https://api.connect.staging-traveloka.com/
issuance:
staging: Credentials issued after NDA signing.
production: Credentials issued after certification.
contact: tera-cm@traveloka.com
channels: [Lark, Email, Teams]
note: >-
The credential mechanism itself is documented behind the developer.connect.traveloka.com login; the
public surface documents only the issuance process, base URLs, and OTA message set.
self_serve: false
access_model:
onboarding: approval
pricing: enterprise
public: false
try_now: false
confidence: high
evidence: >-
No self-serve signup exists for any of the three surfaces. Every path requires a partnership form,
contract and certification before credentials are issued.
cross_links:
conventions: conventions/traveloka-conventions.yml
sandbox: sandbox/traveloka-sandbox.yml
errors: errors/traveloka-problem-types.yml
conformance: conformance/traveloka-conformance.yml