Trying to update your Amazon Echo to your local timezone? Here’s a quick and simple way to do it using Chrome Developer Tools and cURL.

Amazon Echos with world globes

Here’s hoping one day soon the Echo will be global!

I previously had a guide to using the Amazon Echo from Australia which detailed everything from where to purchase it to how to change the location and timezone. In order to change the timezone and such, we needed to spot the request by the Alexa web app and then re-send it using Request Maker. I then found a way using cURL… however, it appears for a range of countries — including Australia — you no longer need to even do that!

 

Setting up your Echo to a non-US/non-UK address and timezone (The new, new way in 2017!)

Update as of 30/11/2017: They’ve added a new dropdown list which can be worked around. I’ve updated the steps below to show a new method. Not sure which countries are supported at the moment, so let me know if yours works!

Try setting up your Echo to a local address and timezone by:

Going to alexa.amazon.com and clicking Settings > Find your device under “Alexa Devices” (it should be right up the top):

Go to Settings and then click your Echo's name on the right

Finding your Echo’s settings

You can now set up your Echo to an Australian address and timezone just by:

Going to alexa.amazon.com and clicking Settings > Find your device under “Alexa Devices” (it should be right up the top):

Go to Settings and then click your Echo's name on the right

Finding your Echo’s settings

From there, scroll to “Device location” underneath “General” and click “Edit”:

Click edit next to device location

Editing our location

Then, right click on the country dropdown and choose “Inspect” (this is on Google Chrome, on Firefox it is “Inspect Element”):

Right click on the country dropdown and click inspect

Inspecting the country dropdown

Click the arrow next to the code that starts with <select id=”data-device-address-country” to expand it:

Click the arrow next to the select tag with data-device-address-country

Expanding the select field

Find the first country code value there (at the time of writing it is “AS” for American Samoa). Double click that value:

Double click to edit the AS value

Editing the AS value

Change it to the country code you would like (e.g. “AU”) and then hit the Enter key:

Change it to the country code you'd like and hit enter

Changing it to the country code we want

Double click the name next to it and change that to your country name (you don’t need to do this for it to work… you could just change the country code and remember which of the countries you changed… but this is neater!). Then hit the Enter key again:

Double click the name beside it and change it to the country name

Changing the country name too

We’ll now have an updated dropdown which lets us choose our country! Take note that this is only temporary — if you refresh the page, it will go back to normal, so don’t refresh the page yet!

We now have Australia in the dropdown

We now have Australia in the dropdown menu!

Choose your new country and then enter in your address below it. Then hit “Save”!

Enter your address and then hit save

Entering the rest of the address

It should successfully save your new address! Feel free to close the developer tools with the X on the bottom right.

The update is successful, close developer tools

A successful address update!

When successful, I receive this message:

The notification of Please check any existing alarms to make sure they match the desired times after changing your address or time zone.

Please check any existing alarms to make sure they match the desired times after changing your address or time zone.

If you see that message, it appears to have updated everything successfully! EASY!

We can also change our timezone using the options underneath there (no developer tools or fanciness required!)

Change the timezone to your local one

Changing your timezone too

To test it out, ask it things such as:

  • “Alexa, what’s the time?”
  • “Alexa, where am I?”

 

What used to happen with the address?

Previously, adding in a local address that is outside of the US or UK did not work and you’d receive this error:

“Could not set your address. Please ensure you have correctly entered a complete address.”

 

Below is all the madness we used to worry about, if you’ve got the address updating successfully — let me know! Once it seems that everyone has it sorted and it’s working for a range of countries, I’ll remove the below madness 🙂

 

Remember… if your Echo is working now, you don’t need to worry about any of the below. It’s here in case some people still can’t update their Echo and wonder why. If you are in this boat, let me know too. I’m hoping to work out whether this is a global change or whether some of us are okay and others aren’t.

 

The old way (SHOULDN’T BE NEEDED ANYMORE!)

Since my earlier article, it appears something may have changed in either the Amazon Echo web app or Request Maker, as the requests do not appear as they used to. I decided to find another way to do this and stumbled upon using the Chrome Developer Tools and cURL.

CAUTION: There has been at least one case of someone no longer being able to use their Echo after attempting to make this work. If you do some of the steps below incorrectly, or if Amazon changes something, there’s every chance you can stop your Echo working. Be cautious. Most recently, it appears Amazon may be blocking this setting change altogether… so this may no longer work for you. Let us know how you go with it!

Important Update! It now appears that only the timezone of your Echo can be changed to one outside of the US. Changing your whole address for other functionality no longer works as the Echo filters addresses to only allow ones in the UK or US. I will update my two Amazon Echo posts if I come across a way to get it working again but because this is on Amazon’s server end… it might be tough! We may have to wait until the Echo goes more global, which I hope will happen soon! If you end up getting the “User-entered device address and validated device address are not consistent; address will not be saved” error — that is the reason why, it’s not you doing anything wrong on your end!

What this means is — This method no longer works for most people if you are trying to update your address. You can no longer set your address to be one outside of the US/UK. The only way that seems to work is changing the timezone at alexa.amazon.com’s settings as per the instructions on “The new way in 2017!”. If you decide to go ahead and give the cURL method a go anyway and it happens to work again at some point in the future, let me know in the comments 🙂

If you are game to try it anyway, here are the old steps to setting your local address —

Setting an initial US address

Go to alexa.amazon.com and click Settings > Find your device under “Alexa Devices” (it should be right up the top):

Accessing your Echo's settings

Accessing your Echo’s settings page

In the page that appears, find your “Device location” setting and click “Edit”:

The edit button for your device location

The edit button for your device location

Open up Chrome Developer Tools using either:

  • The Chrome menu, Tools > Developer Tools.
  • Ctrl+Shift+I on Windows.
  • Cmd+Opt+I on Mac.

Go to the Network tab and type in “device-preferences” to filter out any HTTP requests happening that we don’t need. At the time of writing, there’s a tonne of analytics requests that stream through too.

Filtering to just device-preferences requests

Filtering to just requests with device-preferences in their URL

Add in a sample address. Choose one in an American suburb you might want to find out local information for, as this will be your default address for all the things we can’t trick the Echo to give us locally:

Setting a US address on the Echo

Choosing a US address for the Echo

One you’ve typed in an address and selected it, you should see two HTTP requests come through in the developer tools (the second one takes a bit of time to pop up). Click on the second request:

Choose the second request that appears

Choosing the second request that appears

If you scroll through the contents of this request, you should see info about location and address, such as deviceAddressModel, this is good! This means you have the right request.

Checking if you have the right request

Checking if you have the right request

Right-click the name of that request and choose “Copy as cURL”.

Right clicking the request and choosing copy as cURL

Copying that request into cURL data

Paste that data into your favourite plain text or code editor like Notepad, Sublime Text, Notepad++… etc (not Microsoft Word or TextEdit!). This is the whole request represented in a cURL command that you’ll be able to run again with new values once you’ve changed them here in the text editor.

If you scroll down to the bottom of that cURL request, you will see a JSON string that starts with {"deviceAccountId" and ends with "isSaveInFlight":true}. This is the data you will want to adjust. Each value will be in a key/value pair such as "timeZoneId":"Australia/Sydney". (Though, my timeZoneId by default when I ran through these steps was actually null.)

You will be updating the following (but not all at once!):

  • timeZoneId – You can find your timezone in this list. Mine was "Australia/Sydney". This is the main one you can change to solve many of the clock issues. Make sure you keep the capitalization exactly the same as in this list, copy paste it exactly as it is there.
  • city
  • countryCode
  • county
  • district
  • houseNumber
  • postalCode
  • state
  • street
  • postalCode (there are two)
  • temperatureScale (I changed mine to CELSIUS)

You’ll be keeping label as is. Previously, Amazon had some sort of backend check for this one that returned a 400 error every time I edited it. Most recently, it hasn’t returned an error when the label was changed, but I do not think it actually refers to it either.

Keep deviceAccountId, searchCustomerId and so on the same — these are unique to you!

The Magic Order!

This is section is an update made on 8th July 2016, thanks to Tony Vid in the comments of my other Echo article.

In order to have everything save correctly on your Echo, Tony found an order which might ensure everything does actually switch over to your local timezone. It has worked for me and others

Important: Do not change the label value at any point!

Firstly, set your timeZoneId, leave everything else as is and then send that cURL request (there are instructions on how to send that below if you aren’t sure)

Then, add the following to your request (keep the timeZoneId changed, each step builds on the last):

  1. Set the city value to your city/suburb
  2. Set countryCode (e.g. AU)
  3. Set county (e.g. Sydney)
  4. Set district (most likely — null)
  5. Set houseNumber (e.g. 2)
  6. Send that cURL request

Then, once those have been sent, add changes to the following in the same way:

  1. Set the first postalCode
  2. Set state (e.g. NSW)
  3. Set street
  4. Send that cURL request

Lastly:

  1. Update the second postalCode
  2. Send that cURL request

According to Tony Vid:

The Label will update itself based on your input above. Weather and asking for nearby restaurants all work. Asking for my location also gives me the correct information. – Tony Vid

In the end, if that all works, you’ll be able to ask the Echo “Alexa, what’s the time?” and receive the right time. You’ll be able to set alarms and such accurately which is also pretty useful! I’ve double checked this process and it worked 100% for me too!

Sending over cURL

Each time you edit those values, you’ll want to make a cURL request to Amazon’s servers using that giant request string you have in your text editor. cURL comes with Mac OSX by default, but Windows users will need to head to the cURL download page to download and install it. If you’re not sure what to do, Zendesk has an overview on installing cURL for Windows that might help.

Once you have cURL installed, go to your Terminal (on Mac) or Command Prompt (on Windows) and paste in the full contents of what you’d been editing from your text editor. Hit Enter to run that command. It should take a few moments and then return a message of some kind. For me, it used to finish with this error:

{"message":"Unable to resolve postal code to an address"}

Recently, it hasn’t given any errors whatsoever and just returns nothing but the terminal ready for more action which is a good sign.

The result

If you followed the new order, it should all work. You’ll be able to ask the Echo, “Alexa, what’s the time?” and receive the right time. You’ll be able to set alarms and such accurately which is also pretty useful!

Note: Don’t worry if you return to the Echo settings page and it shows the US address still — this doesn’t seem to change in the web app.

Also note: Be careful with returning to the Echo settings page, I’ve found that a cached request or something along those lines ran when I went to my Echo settings. So check your timezone after visiting these settings in future to avoid any nasty timezone switching surprises.

For more information on getting other aspects of the Echo working in Australia, see my earlier post on How do I set up an Amazon Echo in Australia?

Got more questions about the Echo? Like, Is the Amazon Echo always listening? How does it work? Does it store its recordings? If so, can you delete them? Does it really only send audio to Amazon after hearing the wake word? I’ve got a detailed look in this article here.

Know other emerging tech enthusiasts who might want to read this too? Please like and share this post with them!

Would you like to republish this article in your own publication?
Contact Dev Diner to request official republication of this article.

Comments

Tried this but didn’t work, what cURL returned when I changed time zone to “Australia/Sydney” was still America/New York

Any ideas?

Hmmmmm that’s really strange! Are you changing other values as well? If so, maybe try only changing the timezone to start with, in case there are some validation checks that are causing the whole thing to not save?

Having problems using curl.Please help if possible
1.Shall I copy as Curl (cmd) or curl (bash – there is an option for that
2.Have copied to Notepad++ and edited it.have the result as https://imgur.com/vvBCJ9M
3.Pasting it to cmd cause problems: https://imgur.com/cK5KsPi
What am I doing wrong?

Hi Arseniy!

I’m not 100% certain as I can’t see line numbers in your screenshots but from the cmd messages, it looks like there are line breaks in your cURL statement, so it’s not running the whole thing at once. You’ll want the whole cURL statement to be one very very long single line command.

Is that possibly what’s happening?

PatCat

Most probably yes, but I can’t find the line brakes and understand where from they come.
Have tried with notepad (simple)- receive the same answer.
Tried the second variant (bash)- goes a bit better but receive errors like Utmscr is not the internal command….

Oh, also, I’d say copy as cURL (cmd) should be the right option.

If that doesn’t work, try running the curl statement using Cygwin — http://www.cygwin.com/. In that case, you’d want to copy cURL (bash) though I believe. Try both options though if one doesn’t work.

Let me know whether any of these options work for you 🙂

With cygwin even worth – paste the code and receive error: curl the conmand not found ;-( Any other ideas?

Cygwin sounds like it should work, you’ll just need to install the cURL package into it. This Stack Overflow post shows how — http://stackoverflow.com/questions/3647569/how-do-i-install-curl-on-cygwin

Try that 🙂

Thanks. That worked
Now with the Variant1 (with “”)I receive “Message null”
With the Variant 2 (with “) i receive no message at all
in alexa app still https://imgur.com/gXP7IA2
Any ideas more?
(sorry for toubling you)

Arseniy — great to hear! As long as you can say “Alexa, what’s the time?” and it gives you the right time, then the call worked successfully. Message null is fine as a response 🙂

Within the alexa app, it will continue to say that your address is a US address, don’t worry about that. I think that is due to the main label that represents the address not being updated — it won’t update to your actual address on that interface.

Test out a few things to see what will work and be accurate (e.g. “How long will it take to get to Sydney?” sort of questions), some location based questions will work and others will fail, with no real easy way of knowing why — that’s about as close as we can get at the moment till Amazon adds proper support for it all.

worked for me on my mac, but I had to use text wrangler rather than textedit (which is bundled with mac)

Thanks for the reply but timezone still doesn’t seem to work…
It is still telling that it is 1.42 despite the face that there is 8.42 in KIev,Ukraine ;-(

One thing which has worked for others — only change the timezone field — keep the rest in their US address fields. See if that changes your timezone, then slowly change other fields one by one and see whether it works 🙂

It also needs to be a timezone in this list here — https://pitangui.amazon.com/api/available-time-zones?_=1445689862656. I’m guessing for you, that’d be “Europe/Kiev”? Is that the timezone you’re entering in?

Same issue for me that Arseniy is having. I’m in London and first tried to change a bunch of the values. Using Request Maker I was getting http 400’s back, so tried this Chrome developer tools way again. Changing a bunch of the values, it returned “message”:null, but didn’t seem to have any effect. So I tried changing only the timeZoneId value to “Europe/London”, and it returns some JSON back to me which still has “America/Los_Angeles” as the timeZoneId. 🙁

Have they perhaps changed this API since last time you did this?

Actually I take it back! Didn’t notice but I was accidentally injecting a bunch of newlines in the command because I was using the built in TextEdit app on Mac. DO NOT use this app as it will add newlines and ruin the curl command. I used TextMate and it did the right thing. Thanks!

Yep, further up, Mark also said he had issues with TextEdit. Word processors aren’t right for this, needs to be plain text. Glad to hear you got it working 😀

I am able to change FAHRENHEIT to CELSIUS. But timeZoneId continues to remain null. I guess the path is blocked.

The timeZoneId might stay null but still update itself. Or try changing one value at a time and see how it goes, it can be a bit fickle but should still work (others have reported to me recently that it’s worked for them… unless Amazon have just recently blocked it).

The other thing to make sure is that you’re changing it to a timezone from the list linked above. It’s gotta be the exact name of one of the ones in the list otherwise it won’t work.

Hope that helps! 🙂

I got it working.. In fact through Request Maker, which still works. What I did was to put the Echo beside me with the Request Maker window open. I edit the timeZoneID, click Send and wait for 200 OK response. Do not close the Request Maker window. Ask Alexa “What is the time now”. See if response changes. It should but if not, repeat the process with Request Maker (that is still open in Chrome) until Alexa gives you a different time. I did not get any changes until I used “Etc/GMT+8”. And I next changed to my location’s time zone and it was properly saved. Alexa gives correct time now. Hope this helps someone out there.

That’s good to see! So my earlier post using Request Maker may still work 🙂 Thank you for your suggestions on how you did it, that might help someone trying all of this out!

Seems like they changed it again – I tried for 2 hours now but can’t get it to work. My Request Maker doesn’t show the PUT (and yes, JS is on) so I use the cUrl method. All I get is “Message: null” as a response, tried the Etc/GMT+1 and Europe/Berlin several times, sometimes changing all values, sometimes only the TimezoneID. Any body got it to work?

I use this at the moment, it is a cUrl directly from Chrome (with the XXXX replaced of course): http://pastebin.com/UAj7X3bg

Also “message: null” doesn’t matter, as long as the time changes on the Echo. The only way to know if it works is to ask “Alexa, what is the time?”.

I’ve tried the above and non of them seemed to work. My workaround by living in dubai is using a -12h timezone. in my case it was alaska. Though its pm there vs am here. it doesnt matter as it still works, i just need to be clear to reverse the setting from PM to AM and vice versa

I managed to get the timezone set for Dubai using the request maker method but location based services don’t work as Dubai doesn’t have post/Zip codes does anyone know if there’s an alternative way e.g. GPS coordinates instead??

Thanks for this! I got my time to change but not my location. Is it possible to change location as well?

The main label for the location never changes but subtly in the background it can change some settings for your location. My Echo doesn’t say my location but for some location queries, it knows what is near me and can give me directions. So it’s sorta there. It won’t be perfect until Amazon releases it officially in your location.

Working perfectly in the UK now, including weather and Uber. The Uber address bit is fiddly but eventually seems to work once County is populated. Example here: https://www.robk.com/amazon-echo-in-the-uk

This is great to hear! Love that things are working better 😀 My Amazon Echo web interface was too slow and preventing me from making any updates right now, which is a shame because I want to try the new steps myself!!!

I’ve got an error “The input line is too long”. Please help.

That’s really strange. What OS are you using? I’d recommend trying the Request Maker method here too — https://devdiner.com/internet-of-things/how-do-i-set-up-an-amazon-echo-in-australia, as that is working for some people too.

You should use cUrl in command mode, not the bash.

Hi,

I had tried based on the sequence mentioned. All works including traffic except my current location weather. It just mentioned it can’t get my location weather. Strange. I am in Singapore.

Hi Issac!

That’s incredibly strange to hear that weather isn’t working — I wonder if it is an issue with the Singapore location’s weather feed?

Not sure what else it could be…

If anyone reading this is in Singapore and has any ideas, feel free to leave a comment 🙂

PatCat

Thanks,

This helped me complete the setup of my Cowatch (has Alexa on the watch) – confirming that all of my details updated on web and app also.

Cheers,

GB

Hi,

Thanks a lot for this guide, I’ve tried everything to get this to work in Sweden. The time/timezone and nearby services works great, but the current location weather is not working. I’ve even checked http://www.accuweather.com to see that I can get the weather for my location and it works (Amazon is using this service for the weather forecasts).

This is my final cURL input, I’ve sent everything in the order suggested by the article.

{
“deviceAccountId”: “–removed-by-purpose–“,
“deviceAddress”: null,
“deviceAddressModel”: {
“city”: “Stockholm”,
“countryCode”: “SE”,
“county”: “Stockholm”,
“district”: null,
“houseNumber”: “1”,
“label”: “1600 Amphitheatre Pkwy, Mountain View, CA 94043, United States”,
“postalCode”: “10000”,
“state”: null,
“street”: “Kungsholmsgatan”
},
“deviceSerialNumber”: “–removed-by-purpose–“,
“deviceType”: “–removed-by-purpose–“,
“firstRunCompleted”: true,
“notificationEarconEnabled”: true,
“postalCode”: “10000”,
“responseStyle”: “CONCISE”,
“searchCustomerId”: “–removed-by-purpose–“,
“temperatureScale”: “CELSIUS”,
“timeZoneId”: “Europe/Stockholm”,
“voiceCastEnabled”: null,
“autocastToThisClient”: false,
“isSaveInFlight”: true
}

(Note: PatCat has updated this comment to be sure this isn’t your actual address)

Hi Guys, I concur, a most helpful guide!

I can also confirm the same behavior when trying to set this up for Sweden. My conclusion is that Accuweather is not recognizing Swedish Street addresses or zip codes. It has no problem identifying a good enough location using the attributes “City, County, CountryCode”.
I’m thinking if I can figure out exactly what attributes Amazon is sending to Accuweather I could manipulate those. I tried removing Street address and Street number with null. I did not get that to work. I think Amazon did not allow that.

Ha. Yes. I am having same issue. I also check in http://www.accuweather.com/, there is weather result for Singapore town, but Alexa reply cannot get my location weather. When i ask “what is the weather in Singapore”, then it can reply correctly. Strange 🙂

Thank you this work, but I didn’t need to use the order. Just updated all at once and now all my echo’s and dots now that i’m from a small place in the Netherlands. It even finds the small restaurants nearby, based on yelp.

I’m happy 🙂

Just to add on to Isaac, weather is not working in Singapore. Everything else is fine including the label.

Thanks for giving another report on this, must be a bug for Singapore. Hopefully it works soon, very strange!

I can set “”timeZoneId””:””Australia/Brisbane”” as many times as I want without changing anything else (using a current valid curl command) and I still get 400 Bad Request. I’ve tried using Sublime Text to edit the request as well as editing it inline at a bash prompt after copying and pasting it. Sending the request from my raspberry pi running behind the same external ip address.

I have no idea what the problem might be.

That’s strange, does the method that uses a Chrome extension work instead for you? https://devdiner.com/answers/how-do-i-set-up-an-amazon-echo-in-australia

(Amazon might be blocking access to this now, as another commenter in that link has found their Echo isn’t working anymore after managing to send those commands… so be careful!)

Well I finally just tried it with Request Maker, and even it all “appears” to have worked from the web interface and it is online (I can control it via the Alexa web interface).

Unfortunatley I’ve lost the ability to voice control the Echo and it has lost the ability to speak. 100% of the time it thinks a moment and then you get the red ring.. No record of the command/question via the web interface. I tried restarting the Echo but it didn’t help 🙁

Setting the address back to the US default and then restarting the Echo makes it “work” again.

I really wish there was a way for me to get this to work :/

Thanks for the fantastic tutorial, I’m running into an issues where after running in terminal I get the response: {“Message”:”class com.amazon.coral.value.json.numbers.TruncatingBigNumber can not be converted to an String”}

I’ve also tried running it as a new command and in a shell without any luck. Any idea what the problem is?

Hi Pat,
Thanks for the article. My Echo is working great except for one thing, the traffic address. I can see via the browser app, and the Android app, that it is still set as my US address. How can I change it to my local address? Should I do it directly via the app or use request maker?
Thanks again for the article.

Always change that sort of thing through request maker, as going through the app won’t work (Amazon doesn’t allow the address to be a non-US address). If you’ve already run through the steps above and it hasn’t updated, I’m not sure if there’s much else you can do. It could be that Amazon are setting this value differently maybe?

Thanks Pat,
I think it’s picking it up from the Amazon account address. It not major as everything else is working perfectly.
Thanks again for the article.

I’m glad everything else is working at least, hopefully that final piece becomes compatible soon enough 🙂 Enjoy your Echo!

Worked like a charm thanks, the first version of cURL (from curl.haxx.se) I tried had issues, but got the version from confusedbycode.com and it worked fine.

Now have the device setup with my exact address in New Zealand, thank you!

Interesting! I wonder what’s up with that other version :/ Thanks for leaving a note — I’m glad it’s working for you 😀

Hi Steve,

I’m trying to set mine to Wellington. I’ve followed the magic order and get 200 responses each time, but it doesn’t seem to update the address label as it’s supposed to and the local location doesn’t get set. Which values did you use? Mine are:

“deviceAddressModel”:{“city”:”Wellington”,”countryCode”:”NZ”,”county”:”Wellington”,”district”:null,”houseNumber”:”145″,”label”:null,”postalCode”:”6037″,”state”:”Wellington”,”street”:” MyReal Street”}

Thanks for sharing this Patrick. I’m in Sao Paulo, Brazil and everything worked fine, except when I ask “Alexa, what’s the weather?”. It does reply me saying “I couldn’t find weather for the location I heard”. The weird thing is that I never mentioned the location as I expected it would automatically tell me the weather for the address I put in.

Timezone is working fine. I was also able to use the same logic and added the origin/destination address for traffic/route calculation.

Any ideas/thoughts on why I can’t get Weather to work? I tried changing the city name from “Sao Paulo” to “São Paulo”, but had no effect. Wondering if Amazon has a list of City Names, just like it does for timezoneids

One thing to check before going too far with it — if you say “Alexa, what’s the weather in San Paolo?”, does it have an accurate answer for you?

Maybe for whatever reason Amazon Echo doesn’t have that location yet for weather :/

It does have an accurate answer when as ask about the weather in Sao Paulo.

That’s super strange… if you’ve updated every field, then I guess it must be a limitation within Alexa’s system somewhere? If anyone else from Brazil is reading this, maybe they can give it a go and let us know if it works?

Does anyone have the coding for the timezone to melbourne. I cant read the text to change it. Thx

Did anyone of you lost the save settings button when you change the location? It used to be there before but now you can only choose from the automatic list or cancel

I have found a new issue… I can change the time zone which is great however if i modify any of the address details I get the following message:

{“message”:”Could not find a valid address matching the DeviceAddresModel; please make sure all required fields are present and that the address is located in a supported country”}

It would appear to me they are now validating addresses (I have tried a couple of different Aussie addresses too)

They’ve recently announced the Echo is coming out in Germany and the UK, so maybe with that update they’ve gotten selective over which countries you can set it to…

That’s a shame! Not sure if there’d be any way around that now unless Amazon themselves open it up 🙁

Thank you for the heads up! Will see if others start to have the same issue…

Thanks for your reply, I’d be interested to hear if anyone else has been successful lately too in case it’s something I’m doing…

Hi, desperately hoping for some help with this. I’ve spent hours on this and consider myself to be fairly technically knowledgeable but I’m stumped. I keep getting this error message:

curl: (6) Could not resolve host: sess-at-main=nq85RmqlR+Y0sl1zoopRHsP0tXd8jVppAv6IB8jm7as=;
curl: (6) Could not resolve host: csrf=2000130804 -H Connection
curl: (3) [globbing] nested brace in column 96
curl: (3) Port number out of range
curl: (6) Could not resolve host: Las
curl: (6) Could not resolve host: Vegas,
curl: (6) Could not resolve host: NV,
curl: (6) Could not resolve host: United
curl: (3) [globbing] unmatched close brace/bracket in column 45

I have tried just changing the time zone (which would be a big help in and of itself) and gotten nowhere. I tried closing the spaces and got nowhere. Tried in both Notebook and in Notebook ++, no luck. Any ideas? Thanks so much.

Could you paste your cURL (with your sensitive data hidden of course!) here so I can see if it looks particularly strange?

Another thing to keep in mind — it appears Amazon *might* be filtering the location now and preventing unsupported countries and time zones from being chosen.

Have you changed one lately? I was able to do this 2 weeks ago but on a new device and the old one I can not change to anything other than a US address. I have been able to change the timezone, temperature and units. I get the following error:
{“message”:”User-entered device address and validated device address are not consistent; address will not be saved”}

Hi Rob!

This comment on my other article says he managed to get it working on the 2nd Oct, so hopefully it’s still working — https://devdiner.com/internet-of-things/how-do-i-set-up-an-amazon-echo-in-australia#comment-953

It might be a matter of doing little changes and seeing what works. Does it work if you just change the timezone? The address bits might no longer work.

PatCat

Yes the timezone and units I can change, but as soon as I try any of the address by themselves or all at the same time it doesn’t work. I get that error message.

Hmmm that’s a shame :/ I guess that means they’ve added in some check to prevent that now :'(

It sounds like they’re validating the device address now and thus, us changing it this way doesn’t get validated maybe?

I can confirm. It seems with version 4008 updating the address is not longer working. TimeZone and other settings are working. But you get the reply that the address can not be set, since the address label is not the same as the set address.. Hopefully someone will find a nice workaround!

Hi,

Any news about a way to change location ?

I was able to change TimeZoneID but not “city” :/

{“message”:”User-entered device address and validated device address are not consistent; address will not be saved”}

Thank you

So far, no luck in finding a way to change more than just the timezone, it appears that Amazon is filtering it to just US and UK addresses. I’ll update the post if I find out more but so far… no luck 🙁

Ok :/. Anyway thank you for your reply and the awesome work you have done for this tutorial !

No worries, I’m glad it’s helped a few people so far, even if it’s just the timezone again rather than address!

Hi

I am not having any luck but I think it is my lack of understanding.

Here is the code for the timezone from , to ,

,^\^”timeZoneId^\^”:null,

The time zone I want is “Australia/Queensland”

Now how will the code look ?

Okay I may have been using curl wrong – not I am getting back The input line is too long ….

I’m not sure what the ^ things are, you shouldn’t have those in there.

You could also try the request maker method which might be a bit easier — https://devdiner.com/internet-of-things/how-do-i-set-up-an-amazon-echo-in-australia

Ok, I originally copied it over in the wrong cURL format. I have simply updated it to my timezone as the instructions said, I get back “The input line is too long” – I have copied and pasted the whole thing – should have I ?

I managed to get the original Echo to do this but not the Echo Dot. Not sure what I did wrong. Here is my curl if you can help: curl “https://pitangui.amazon.com/api/device-preferences/G0B0H506618300N9” -X PUT -H “Origin: http://alexa.amazon.com” -H “Accept-Encoding: gzip, deflate, sdch, br” -H “Accept-Language: en-us” -H “User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36” -H “Content-Type: application/json” -H “Accept: application/json, text/javascript, */*; q=0.01” -H “Referer: http://alexa.amazon.com/spa/index.html” -H “csrf: 2000130804” -H “Cookie: x-amzn-dat-gui-client-v=1.24.308.0; session-id=167-3016169-3923568; session-id-time=2105482069l; csrf=2000130804; ubid-main=166-6059166-8474944; session-token=””””;x-main=”””Connection: keep-alive” –data-binary “{“”deviceAccountId””:””xxxxx””,””deviceAddress””:null,””deviceAddressModel””:{“”city””:””Las Vegas””,””countryCode””:””US””,””county””:””Clark””,””district””:null,””houseNumber””:null,””label””:””89107,””Las Vegas,NV,United States””,””postalCode””:””89107″”,””state””:””NV””,””street””:null},””deviceSerialNumber””:””xxxxx””,””deviceType””:””AKNO1N0KSFN8L””,””distanceUnits””:””IMPERIAL””,””firstRunCompleted””:true,””locale””:””en-us””,””notificationEarconEnabled””:true,””postalCode””:””89107″”,””responseStyle””:””CONCISE””,””searchCustomerId””:””A1RPX2F3G9R1EP””,””supportedLocales””:[“”en-US””,””en-GB””],””temperatureScale””:””FAHRENHEIT””,””timeZoneId””Asia/Jerusalem””voiceCastEnabled””:null,””autocastToThisClient””:false,””isSaveInFlight””:true}” –compressed

I removed the sensitive parts. I have a US mailing address in Las Vegas so I put that down but want at a minimum to have the time zone set correctly. Thanks in advance for any help.

Just to clarify, you set the US address normally in the Alexa settings right? Then changed the timezone?

If all you change is the timezone, you should be a-okay. I’m not sure if it’s how you’ve copy pasted it, but the cURL above has two “” in a lot of the spots where there should be only one. Maybe that’s it?

Could be. I’ll try again in the morning. Thanks.

Hi,
Thank you for the great tutorial.
I have the original Echo – purchase from US by a friend and I am using it in Romania. It is working – mostly for the automation part – and I managed to change the TimeZone to “Europe/Bucharest”, but it seems I cannot change the address unfortunately. I tried the RequestMaker and got it to change the timezone. I will try your tutorial and see if I can update/change the address too. BTW – the software version of my Echo is at this moment – 4172
Any tips?

At the moment, it looks like it’s mainly the timezone that can be changed, the address no longer seems to update with the new validation set up.

Awesome article. Just got my echo today and able to update the timezone.

As others have commented, only timezone change functionality is working. There seems to have been additional backend validation added that prevents any change to the address (to a non-US one). I was trying to set it to an India address.

trying to get it set to an echodot v2 is quite impossible now in singapore..
try request maker or curl.

curl returned fine, but alexa still tells me time from us.
unable to switch to sg local time GMT+8

i successfully change the time zone to sg on the echo dot version 2

curl "https://pitangui.amazon.com/api/device-preferences/XXXXXXXXXXXXXXXXXXXXX" -X PUT -H "Origin: http://alexa.amazon.com" -H "Accept-Encoding: gzip, deflate, sdch, br" -H "Accept-Language: en-us" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36" -H "Content-Type: application/json" -H "Accept: application/json, text/javascript, */*; q=0.01" -H "Referer: http://alexa.amazon.com/spa/index.html" -H "csrf: -1140875754" -H "Cookie: x-amzn-dat-gui-client-v=1.24.698.0; csrf=-1140875754; x-wl-uid=XXXXX; s_cc=true; s_nr=1479783388273-Repeat; s_vnum=XXX; session-id-time=2082787201l; session-id=ZZZ; session-token=^^"XXXXXXXXXXXXXXXX"; x-main=^^"XXXXXX"; at-main=XXXX; sess-at-main=^^"XXXXXXXXXXXXXXXXXXXXXX=^^"" -H "Connection: keep-alive" --data-binary "^{^^"deviceAccountId^^":^^"A2AAXW716W2G9Z^^",^^"deviceAddress^^":null,^^"deviceAddressModel^^":^{^^"city^^":^^"Singapore^^",^^"countryCode^^":^^"SG^^",^^"county^^":^^"Singapore^^",^^"district^^":null,^^"houseNumber^^":"2",^^"label^^":^^"94043, Mountain View, CA, United States^^",^^"postalCode^^":^^"120302^^",^^"state^^":null,^^"street^^":"Clementi"^},^^"deviceSerialNumber^^":^^"G090L909638307FT^^",^^"deviceType^^":^^"A3S5BH2HU6VAYF^^",^^"distanceUnits^^":^^"IMPERIAL^^",^^"firstRunCompleted^^":true,^^"locale^^":^^"en-us^^",^^"notificationEarconEnabled^^":true,^^"postalCode^^":^^"120302^^",^^"responseStyle^^":^^"CONCISE^^",^^"searchCustomerId^^":^^"A1JOOOSDMYR7ZP^^",^^"supportedLocales^^":^[^^"en-US^^",^^"en-GB^^",^^"deDE^^"^],^^"temperatureScale^^":^^"FAHRENHEIT^^",^^"timeZoneId^^":"Asia/Singapore",^^"voiceCastEnabled^^":null,^^"autocastToThisClient^^":false,^^"isSaveInFlight^^":true^}" --compressed

can u check to see what i did wrong in my curl commands?

what did you enter for county / district / house number / state & street?

Ervin, you have a lot of ^^ characters in your command… they shouldn’t be there. Do they appear when you copy the curl command?

Overall, the address won’t change, only the timezone works these days.

Hi Patrick, I’m actually using curl for windows..
So when i copy it as curl for cmd, the ^ & \ would be there. I only tot of removing the “\” but didn’t tink so much of the “^”.. do they affect the whole thing ?

Ah! Yep, sorry. The ^ are needed in Windows:

“The cURL examples often have a backslash (\) at the end of lines to break up a long statement into easier-to-read lines. The backslash is a line continuation character in UNIX but not in Windows. In Windows, replace any backslash at the end of lines with the caret (^) character, which is an escape character in Windows. Don’t leave any space after any ^ character or it won’t work. The caret will escape the space instead of the new line.”

So that shouldn’t be a problem 🙂

Are you getting a particular error message?

Tried replacing “^\^” with “^” & also tried replacing “\” with “^” with my notepad replace all function …
Didn’t work

All I got was port number Couldn’t be resolved, address couldn’t be resolved, unmatched close brace in line xx,

Most of the returns were message:null at the start …

Hoping somebody from sg could meet up n help though … :/

the first time i did it, it didn’t work then i restarted alexa and followed the magic order. amazing now it works for me here GMT +8 (Malaysia)

hi, u managed to change your address as well?
i dunno y but the request maker i downloaded doesnt seem to function properly.
tried reinstalling but still cant see the device preferences after i change the address

Hi Leong, Im based in Kuala Lumpur and am thinking about getting the Amazon Echo Dot. Do you think you would be able to help me/walk me through your set up?

timeZoneId & temperatureScale can be changed at the same time.

No luck with the address, I’m afraid
“User-entered device address and validated device address are not consistent; address will not be saved”

Using iMac 10.12.x
TextWrangler for text editing (TextEdit or Notes don’t work)

Also noticed Pandora isn’t on the list of Music & Books, it is also not listed under Music Services, when you chose Default music services, Pandora & iHeartRadio are greyed out only Amazon Music is available

After a few weeks, I can go to Alexa.amazon.com, and edit:
Address to U.K., edit todo list, edit shopping list.
So it seems OK.

The UK should be officially supported by Amazon, so you should be able to do everything if you’re based there 🙂

This method doesn’t work anymore is there a updated vision for this and is getting me confused can anyone help please?

So far, no other method that I’m aware of. Only changing the timezone and temperature is available. The others have been blocked by Amazon 🙁

Only Timezone is possible .. retested today ..(Sydney Australia) .. as the validation is now done at the Amazon server side then i doubt an easy workaround could be implemented until they support AU. Its cloud based !

Anyway will live with that restriction for now .. still a very effective unit as it is 🙂

Have tried setting up Amazon Music Unlimited For the Echo ($3.99USD / month) without success .. always fails at validating the payment method . even though its a non specific travel debit card. Anyone tried this service ?

I use this when i need a US credit card works for everything so far even amazon music

I wrote to Amazon about this todday as I kept getting the same error. I live in the Netherlands and they told me that Amazon Music Unlimited is only for US-UK based addresses and credit cards registered in those countries. That´s why we´re getting the payment error

Hi I live in Sao Paulo, Brazil. I was able to setup timezone but the issue is that it is not accepting the location at all. It keeps getting Seattle as default. Any idea what might be happening?

Amazon appears to be filtering these from their own cloud service, so it doesn’t look like the address is changable anymore sadly!

Hi Patrick

The latest method works like a charm. Managed to change all my Alexas even my Echo Show now showing my weather in Malaysia. Thanks bro.

Leave a Reply

Your email address will not be published. Required fields are marked *

Want more?