Language translations are defined by a locale value, also known as a "language tag". For example, the locale value for English (American) is en
.
For any type of Verify template used, the locale will automatically resolve based on the country code of the phone number provided for Verifications sent using the SMS, Voice, or WhatsApp channels, with en
or a custom template's default language as the fallback locale if a translation is not available. See a list of phone number country code to language mappings here. Using this automatic resolution is highly recommended. If a language override is desired, you can specify the locale
parameter when creating a Verification.
The locale values follow country-region format as described in IETF's BPC 47 for the languages listed below. If an unsupported override locale is given, a 404 error will be returned. In that case, we recommend that you retry the request without the locale
parameter to implement a fallback to the country code's default language or English.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createVerification() {11const verification = await client.verify.v212.services("VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")13.verifications.create({14channel: "sms",15locale: "es",16to: "+14155552345",17});1819console.log(verification.status);20}2122createVerification();
1{2"sid": "VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"service_sid": "VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",4"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",5"to": "+14155552345",6"channel": "sms",7"status": "pending",8"valid": false,9"date_created": "2015-07-30T20:00:00Z",10"date_updated": "2015-07-30T20:00:00Z",11"lookup": {},12"amount": null,13"payee": null,14"send_code_attempts": [15{16"time": "2015-07-30T20:00:00Z",17"channel": "SMS",18"attempt_sid": "VLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"19}20],21"sna": null,22"url": "https://verify.twilio.com/v2/Services/VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Verifications/VEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"23}
SMS messages sent with Programmable Messaging or Verify are priced per message segment.
Messages sent in certain language locales, including pt
, pt_BR
, cs
, and el
or in non-GSM characters may be split into multiple message segments. You can check how many message segments your message will use with the Messaging Segment Calculator tool.
Learn more about how to limit message segments in our developer best practices.
Language support varies depending on if a Verify Default, pre-approved or custom template is used and what channel it's sent with. Learn more about the differences between these templates types here.
This table shows the current language support for the Verify Default template. This template is used automatically if a pre-approved or custom template is not specified in your Verification request and your Verify Service does not have a pre-approved or custom default template set.
Language | Language Tag | Supported Channels |
---|---|---|
Afrikaans | af | SMS |
Arabic | ar | SMS |
Catalan | ca | SMS Voice |
Chinese (Simplified using mainland terms) | zh or zh-CN | SMS, Voice |
Chinese (Simplified using Hong Kong terms) | zh-HK | SMS, Voice |
Croatian | hr | SMS |
Czech | cs | SMS |
Danish | da | SMS, Voice |
Dutch | nl | SMS, Voice |
English (American) | en | SMS, Voice |
English (British) | en-GB | Voice |
Estonian | et | SMS |
Finnish | fi | SMS, Voice |
French | fr | SMS, Voice |
German | de | SMS, Voice |
Greek | el | SMS |
Hebrew | he | SMS |
Hindi | hi | SMS |
Hungarian | hu | SMS |
Indonesian | id | SMS |
Italian | it | SMS, Voice |
Japanese | ja | SMS, Voice |
Kannada | kn | SMS |
Korean | ko | SMS, Voice |
Lithuanian | lt | SMS |
Malay | ms | SMS |
Marathi | mr | SMS |
Norwegian | nb | SMS, Voice |
Polish | pl | SMS, Voice |
Portuguese (Brazilian*)* | pt-BR | SMS, Voice |
Portuguese | pt | SMS, Voice |
Romanian | ro | SMS |
Russian | ru | SMS, Voice |
Slovak | sk | SMS |
Spanish | es | SMS, Voice |
Swedish | sv | SMS, Voice |
Tagalog | tl | SMS |
Telugu | te | SMS |
Thai | th | SMS |
Turkish | tr | SMS |
Ukrainian | uk | SMS |
Vietnamese | vi | SMS |
Currently, only some languages that are supported by Verify are supported by pre-approved templates, with plans to continue adding translations and expanding language support.
Checking the available languages per-template via API
translations
property of the template to see supported languages.Checking the available languages per-template via Twilio Console
The template requester must provide translations when making a custom template creation request, read this support article for more information on how to make that request. Each translation needs to be mapped to a locale value. The locale value can be defined by the template requester, but must be of the format XX (e.g. pt
) or XX-XX (e.g. pt-br
) and consist of the following locale "component" values, as defined by IETF's BPC 47.
Custom templates support all language and channel combinations currently supported by the Verify Default template, in addition to the following languages in all channels except for Voice:
Language | Language Tag |
---|---|
Abkhaz | ab |
Afar | aa |
Akan | ak |
Albanian | sq |
Amharic | am |
Aragonese | an |
Armenian | hy |
Assamese | as |
Avaric | av |
Avestan | ae |
Aymara | ay |
Azerbaijani | az |
Bambara | bm |
Bashkir | ba |
Basque | eu |
Belarusian | be |
Bengali | bn |
Bihari | bh |
Bislama | bi |
Bosnian | bs |
Breton | br |
Bulgarian | bg |
Burmese | my |
Chamorro | ch |
Chechen | ce |
Chichewa, Chewa, Nyanja | ny |
Chuvash | cv |
Cornish | kw |
Corsican | co |
Cree | cr |
Divehi, Dhivehi, Maldivian | dv |
Esperanto | eo |
Ewe | ee |
Faroese | fo |
Fijian | fj |
Fula, Fulah, Pulaar, Pular | ff |
Galician | gl |
Georgian | ka |
Guaraní | gn |
Gujarati | gu |
Haitian, Haitian Creole | ht |
Hausa | ha |
Herero | hz |
Hiri Motu | ho |
Interlingua | ia |
Interlingue | ie |
Irish | ga |
Igbo | ig |
Inupiaq | ik |
Ido | io |
Icelandic | is |
Inuktitut | iu |
Javanese | jv |
Kalaallisut, Greenlandic | kl |
Kanuri | kr |
Kashmiri | ks |
Kazakh | kk |
Khmer | km |
Kikuyu, Gikuyu | ki |
Kinyarwanda | rw |
Kirghiz, Kyrgyz | ky |
Komi | kv |
Kongo | kg |
Kurdish | ku |
Kwanyama, Kuanyama | kj |
Latin | la |
Luxembourgish, Letzeburgesch | lb |
Luganda | lg |
Limburgish, Limburgan, Limburger | li |
Lingala | ln |
Lao | lo |
Lithuanian | lt |
Luba-Katanga | lu |
Latvian | lv |
Manx | gv |
Macedonian | mk |
Malagasy | mg |
Malayalam | ml |
Maltese | mt |
Māori | mi |
Marshallese | mh |
Mongolian | mn |
Nauru | na |
Navajo, Navaho | nv |
North Ndebele | nd |
Nepali | ne |
Ndonga | ng |
Norwegian Nynorsk | nn |
Norwegian | no |
Nuosu | ii |
South Ndebele | nr |
Occitan | oc |
Ojibwe, Ojibwa | oj |
Old Church Slavonic, Church Slavic, Church Slavonic, Old Bulgarian, Old Slavonic | cu |
Oromo | om |
Oriya | or |
Ossetian, Ossetic | os |
Panjabi, Punjabi | pa |
Pāli | pi |
Persian | fa |
Pashto, Pushto | ps |
Quechua | qu |
Romansh | rm |
Kirundi | rn |
Sanskrit (Saṁskṛta) | sa |
Sardinian | sc |
Sindhi | sd |
Northern Sami | se |
Samoan | sm |
Sango | sg |
Serbian | sr |
Scottish Gaelic, Gaelic | gd |
Shona | sn |
Sinhala, Sinhalese | si |
Slovene | sl |
Somali | so |
Southern Sotho | st |
Sundanese | su |
Swahili | sw |
Swati | ss |
Tamil | ta |
Tajik | tg |
Tigrinya | ti |
Tibetan Standard, Tibetan, Central | bo |
Turkmen | tk |
Tswana | tn |
Tonga (Tonga Islands) | to |
Tsonga | ts |
Tatar | tt |
Twi | tw |
Tahitian | ty |
Uighur, Uyghur | ug |
Ukrainian | uk |
Urdu | ur |
Uzbek | uz |
Venda | ve |
Volapük | vo |
Walloon | wa |
Welsh | cy |
Wolof | wo |
Western Frisian | fy |
Xhosa | xh |
Yiddish | yi |
Yoruba | yo |
Zhuang, Chuang | za |
Verify will auto-create Copy Code Authentication templates in 71 languages once you've brought your own WhatsApp Sender in the WhatsApp Settings for your Verify Service.
Verify locale | WhatsApp locale used | "Copy code" text |
---|---|---|
af | af | Kopieer kode |
sq | sq | Kopjo kodin |
ar | ar | رمز النسخ |
az | az | Kodu kopyalayın |
bn | bn | কোড কপি করুন |
bg | bg | Копирайте кода |
ca | ca | Copia el codi |
zh-cn | zh_CN | 复制验证码 |
zh-hk | zh_HK | 複製驗證碼 |
zh-tw | zh_TW | 複製驗證碼 |
hr | hr | Kopiraj kod |
cs | cs | Kopírovat kód |
da | da | Kopiér kode |
nl | nl | Kopieer code |
en | en | Copy code |
en-gb | en_GB | Copy code |
en-us | en_US | Copy code |
et | et | Kopeeri kood |
fil | fil | Kopyahin ang code |
fi | fi | Kopioi koodi |
fr | fr | Copier le code |
ka | ka | დააკოპირეთ კოდი |
de | de | Code kopieren |
el | el | Αντιγραφή κωδικού |
gu | gu | કોડ કૉપિ કરો |
ha | ha | Kwafi lambar |
he | he | העתק קוד |
hi | hi | कोड कॉपी करें |
hu | hu | Kód másolása |
id | id | Salin kode |
ga | ga | Cóipeáil cód |
it | it | Copia il codice |
ja | ja | コードをコピーする |
kn | kn | ಕೋಡ್ ನಕಲಿಸಿ |
kk | kk | Кодты көшіру |
rw | rw_RW | Gukoporora kode |
ko | ko | 코드 복사 |
ky | ky_KG | Кодду көчүрүү |
lo | lo | ສຳເນົາລະຫັດ |
lv | lv | Kopēt kodu |
lt | lt | Nukopijuokite kodą |
mk | mk | Копирајте го кодот |
ms | ms | Salin kod |
ml | ml | കോഡ് പകർത്തുക |
mr | mr | कोड कॉपी करा |
nb | nb | Kopier koden |
fa | fa | کد را کپی کنید |
pl | pl | Skopiuj kod |
pt-br | pt_BR | Copiar código |
pt-pt | pt_PT | Copiar código |
pa | pa | ਕੋਡ ਕਾਪੀ ਕਰੋ |
ro | ro | Copiați codul |
ru | ru | Скопировать код |
sr | sr | Копирај код |
sk | sk | Kopírovať kód |
sl | sl | Kopiraj kodo |
es | es | Copiar código |
es-ar | es_AR | Copiar código |
es-es | es_ES | Copiar código |
es-mx | es_MX | Copiar código |
sw | sw | Nakili msimbo |
sv | sv | Kopiera kod |
ta | ta | குறியீட்டை நகலெடுக்கவும் |
te | te | కాపీ కోడ్ |
th | th | คัดลอกรหัส |
tr | tr | Kodu kopyala |
uk | uk | Скопіювати код |
ur | ur | کوڈ کاپی کریں۔ |
uz | uz | Kodni nusxalash |
vi | vi | Sao chép mã |
zu | zu | Kopisha ikhodi |