AlexaDev Tuesday: International Alexa Skills With No Code Changes

I’ve noticed that many Alexa skill devs are reluctant to release their skills in markets outside the US, and I think it’s because many are under the impression that code changes and/or foreign language fluency are required. This is not true. In many cases, you can release international Alexa skills with no code changes and no interaction model changes.


Meddling With Foreign Languages


Adding UK, India, Canada and Australia Support Can Be Limited To Filling Out Developer Portal Forms
Amazon’s Develop Skills in Multiple Languages documentation is very thorough and covers all the bases for the dev who wants to totally customize his or her skill for each foreign market. However, what it doesn’t say is that customizing your skill for each region is totally optional, so long as the supported language for that region is English. English is the supported language for Alexa not only in the US, UK and Australia, but for India and Canada as well.


The Add A New Language Tab
It may be helpful to bear in mind what Amazon is up to with their “Add A New Language” tab in the Developer Console. In a nutshell, this tab presents you with all the same forms you originally completed when you first submitted the skill in order to give you the option of customizing the following items when you release the same skill in a new region:

  • skill name, invocation name
  • skill description, as shown to consumers on the foreign Amazon site and in the foreign Alexa app
  • interaction model, to account for regional differences in slang, idiom and pronunciation
  • icons, as shown to consumers on the foreign Amazon site and in the foreign Alexa app
  • configuration details, in case you want users in different regions to access different copies or versions of your code located closer to, or within the region (usually for performance optimization)
  • compliance details, such as a case where a privacy policy or terms of use is required in some regions but not others

In some cases it absolutely makes sense to change your skill’s interaction model and public-facing details to better suit the target region. Regional customs and English speech patterns can vary widely across the globe, and your skill’s ability to appeal to and connect with users may depend on meeting those users on their own terms.

However, if you don’t need to customize your international skill version(s), adding support for more English-language regions is a matter of copying skill information from your original to the new version.


The How To

In the screenshot below, the Add A New Language tab has been opened for an in-development skill to illustrate which forms you must complete in order to add support for a new region.


Dev Portal International


1. Put your skill into development status and copy all of its publication details into a text file for use in creating your international versions.
I create a “PublishingDetails.txt” file for all my skills during development, partly to facilitate adding new language support and partly for backup/record keeping purposes.


2. Click the Add A New Language tab and select the the English language region where you’d like to add support.
Note that only regions where your skill has not yet been submitted will be included in the list, and when you select one the title of the tab will update to reflect your selected language/region.

The blue boxes in the screenshot above indicate English language regions where (as of this writing, on 12/12/17) your original, US skill can be more or less copied as-is to create a foreign market version.


3. Complete all of the forms to create a copy of your skill for the new region.
The red boxes in the screenshot indicate forms in the Add A New Language tab where you will be presented with a blank (or mostly blank) version of the form to complete. If you’re not making any changes to customize the skill for the selected region, you can simply copy the same information you entered for the US version. Note that you’ll be re-entering your intent schema and utterances and will have to re-upload your skill icons in the Interaction Model and Publishing Information forms, respectively.

The yellow boxes in the screenshot indicate forms that will be pre-filled with information from your original skill, but where you can make changes if desired. Note that by default, your new region skill version will point to the same code base as your original skill. You can change this in the Configuration form if you’re hosting different copies or versions of the code for different regions.


4. Test.
Testing is of course limited to the dev console simulator, since you can’t be co-located in both the US and the target region simultaneously, but testing tools in the Developer Console are available for each region. Even if you’ve made no changes to your original skill at all, because the Alexa software version will vary across various English-speaking regions you should be sure to test your skill using both the Voice Simulator and Service Simulator in the new language tab.


5. Repeat steps 1 – 4 for each region where you want your skill released.


6. Submit for certification.


Flash Briefing Skills Are Different
In the case of Flash Briefing skills, you won’t find any Add A New Language tab in the Developer Console. For those you have to create a totally new copy of the skill for each language/region from scratch, selecting the desired language/region at the start of the process. But you can still simply copy your existing details into the new skill, and you can still point to the same code base as the original skill too.

Going forward, each language/version of a Flash Briefing skill will be listed separately in the console, as if it were a totally different skill from any other you’ve created.


What If You Want To Customize Everything?
If you need to create a totally customized version of your skill for a new region, click here to read a detailed walkthrough of the entire process in How to Update Your Skills for India, from the Amazon Developer Blog.