Languages
Every person in Solidarity Tech has language settings that determine how they receive communications and which Team Members can reach out to them. These settings include a preferred language (primary) and optionally secondary languages.
Preferred Language vs Secondary Languages
| Setting | Description |
|---|---|
| Preferred Language | The primary language a person is most comfortable communicating in. Most people get one from a form, their browser, or your organization's default language. It can be empty. |
| Secondary Languages | Additional languages a person can communicate in. A person can have multiple secondary languages. |
In phonebanks and textbanks open to Anyone, languages determine which contacts Team Members are served. By default, a Team Member is served contacts whose preferred language matches the Team Member's preferred language. A Team Member with secondary languages can pick one of them as the working language instead. Secondary languages also count for scheduled call matching.
How Languages Are Set
Preferred Language
Preferred language can be set in several ways:
-
Browser Language Detection
When someone submits a form for the first time, we detect their browser's configured language settings and use that to set their preferred language automatically. -
Form Field Override
If your form includes a "Preferred Language" field, the user's selection will override the browser-detected language. -
Data Imports
You can set preferred language during any data import. -
Manual Updates
You can update a person's preferred language from their profile. -
API
Set via thepreferred_languagefield when creating or updating users.
If a person is added via the API and no language is specified, their preferred language defaults to your organization's default language (typically English).
Secondary Languages
Secondary languages can be managed from a person's profile:
- Navigate to the person's profile
- Find the Languages section in the details panel
- Click the + button to add a new language
- Select from the available languages (languages already set as preferred or secondary will be disabled)
To remove or promote a secondary language:
- Click the ⋯ (ellipsis) button next to any secondary language
- Choose Make Primary to promote it to the preferred language (the current preferred language becomes secondary)
- Choose Remove Language to delete it from the person's languages

How Languages Affect Communication
Broadcast Messaging (Email & Text)
When sending emails or text blasts, Solidarity Tech checks each person's preferred language and delivers the message in that language if a version is available. If not, the message is sent in your organization's default language (typically English).
This allows you to send multilingual communications in a way that feels seamless and personalized to the recipient.
Pages
A page picks its language in this order: the ?locale= parameter in the URL, the preferred language of a recognized person, then the browser language. The page must support that language. Otherwise, the content shows in English.
Phonebanking & Textbanking
Phonebanks and textbanks open to Anyone use language matching to ensure contacts are reached by Team Members who speak their language:
- A contact's preferred language is matched against the working language that the Team Member picks. By default, this is the Team Member's preferred language.
- If someone's preferred language is French, they are served only to a Team Member who works in French. French can be that Team Member's preferred language or one of their secondary languages.
- The predictive dialer (Professional plan) does not match languages.
A Team Member who speaks two or more languages picks one working language when they start. The picker is in the Solidarity app, as 'Calling language' on the power dialer page, and as 'Sending language' on the textbank send page. To work in a different language, pick it there. In textbanks, the initial message must also have a version in the working language before the Team Member can send.
This ensures that all outreach is accessible and clear for the recipient.
You can see a breakdown of preferred languages for the people targeted in a phonebank or textbank that is open to Anyone. In the Targeting tab, click the "eye" icon next to the total. The table of preferred languages helps you find which language skills your callers or texters need.
Scheduled Calls
When supporters book a call, they pick a Call Language from the chapter's Supported Languages. The available time slots then come from Team Members who speak that language as their preferred language or a secondary language.
A Team Member will only be shown availability slots for languages they have configured in their profile.
Importing Languages
When importing contacts via CSV:
- Preferred Language: Map a column to the "Preferred Language" field. Use language codes (e.g.,
en,es,fr) or full language names. - Secondary Languages: Map a column to the 'Secondary Language' field. Put one language code or language name in each cell, because a list such as
es, frdoes not match a language. The import adds that language to the person's secondary languages.
If no preferred language is specified during import, you can set a default language that applies to all imported contacts.
API Reference
When working with the API, use these fields:
| Field | Type | Description |
|---|---|---|
preferred_language | string | Language code (e.g., "en", "es"). A few codes have three letters, such as "yue" and "asl". |
secondary_languages | array | Array of language codes (e.g., ["es", "fr"]) |
second_language | string | Deprecated - Use secondary_languages instead. Kept for backward compatibility. |
Using language settings effectively is one of the most powerful ways to build deeper relationships with your community and ensure every person is reached in a language they're comfortable with.
Updated 2 days ago
