Localization
The Mobiscroll Connect pages — where the user selects a calendar provider, signs in, and approves the consent screen — are localized. You choose the language by passing the lng parameter when you start the authorization flow, so the pages render in the same language as the application that sent the user there.
Localization applies to the user-facing Connect pages only. API JSON responses and webhook payloads always remain in English.
Supported languages
| Code | Language | Direction |
|---|---|---|
en | English | Left-to-right |
es | Spanish | Left-to-right |
fr | French | Left-to-right |
ar | Arabic | Right-to-left |
Setting the language
The language is selected with the lng query parameter on the authorize URL — the same URL that opens the Connect pages. This is the recommended way for a calling application to pass a locale.
When you use one of the SDKs, pass lng to the auth-URL builder instead of constructing the query string by hand.
- REST
- Node.js SDK
- Python SDK
- PHP SDK
- .NET SDK
- Java SDK
- Go SDK
- Ruby SDK
GET /authorize?client_id=proj-123&user_id=user-456&response_type=code&lng=es
const authUrl = client.auth.generateAuthUrl({ userId: 'user-456', lng: 'es' });
auth_url = client.auth.generate_auth_url(user_id='user-456', lng='es')
$authUrl = $client->auth()->generateAuthUrl(userId: 'user-456', lng: 'es');
var authUrl = client.Auth.GenerateAuthUrl(new AuthorizeParams { UserId = "user-456", Lng = "es" });
String authUrl = client.auth().generateAuthUrl(
AuthUrlParams.builder().userId("user-456").lng("es").build());
authURL := client.Auth().GenerateAuthURL(&mobiscroll.AuthURLParams{UserID: "user-456", Lng: "es"})
auth_url = client.auth.generate_auth_url(user_id: 'user-456', lng: 'es')
See the lng request parameter on the Authorize endpoint for the full API reference, and your SDK's integration guide for the exact syntax.
Language fallback
If lng is not provided, Connect resolves the language in the following order:
- The
lngquery parameter, when present. - The user's browser
Accept-Languageheader. - English (
en) as the final default.
Existing integrations that do not pass lng continue to work without changes — users whose browser language is supported now see the Connect pages in that language automatically. To force English regardless of the browser, pass lng=en explicitly.
Right-to-left (RTL)
Arabic (ar) is the first right-to-left locale. When ar is active, the Connect UI direction switches to right-to-left automatically — no extra configuration is required.
The localized pages are the provider selection (authorize), consent, Apple and CalDAV login, error, and session-lost pages. Anything your application consumes programmatically — API responses and webhook notifications — stays in English regardless of lng.
- Authorize API reference — the
lngparameter and the full authorization request. - Scopes & Permissions — the other core concept that shapes the authorization request.