---
title: Localization of notifications
description: Each environment has a set of predefined notifications templates it can access. A template represents a specific process flow, for example, device_pairing or strong_authentication, that requires a notification. Each template defines the deliveryMethods (Email, SMS, Voice or Push) that it supports. A content defines one message text choice for a notification. Each content is always associated with one template and has one deliveryMethod and one locale.
component: pingone-api
page_id: pingone-api:platform:reference/localization/notifications
canonical_url: https://developer.pingidentity.com/pingone-api/platform/reference/localization/notifications.html
section_ids:
  runtime-logic-for-content-selection: Runtime logic for content selection
---

# Localization of notifications

Each environment has a set of predefined notifications templates it can access. A template represents a specific process flow, for example, device\_pairing or strong\_authentication, that requires a notification. Each template defines the deliveryMethods (Email, SMS, Voice or Push) that it supports. A content defines one message text choice for a notification. Each content is always associated with one template and has one deliveryMethod and one locale.

## Runtime logic for content selection

Each content, whether default or custom, is associated with one template, one `deliveryMethod`, one `locale`, and optionally, one `variant` (For more information on variants, refer to [Creating custom contents](../../notifications/notifications-templates.html#notifications-templates-creating-custom-contents)). When a request for content is executed at runtime, it includes a template, `deliveryMethod`, `locale` and, optionally, a `variant`.

1. PingOne matches the best text notification content for the user based on `locale` and `variant` name.

2. If a `locale` is specified on the request (for example, on the `notification.template.locale` property on `POST {{apiPath}}/v1/environments/{{envID}}/users/{{userID}}/devices`), it overrides the user's preferred language setting.

3. If the `locale` on the request (or the user's preferred locale) does not match a notification content with the exact locale, PingOne uses the best matching locale (based on the language, ignoring the region) if available. For example, `es-ES` falls back to `es`.

4. For the `locale` property value, PingOne supports language tags with quality values as described in [Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content](https://httpwg.org/specs/rfc7231.html#header.accept-language).

5. For voice notifications, PingOne uses the best matching language based on the supported languages of the provider (Twilio, Syniverse, or a custom provider).

For more information, refer to [Notifications](../../notifications.html).
