I am running my own web service which already supports OAuth. Users can create a personal user account to access the web service. Now I am trying to create a new Custom Skill that allows users to link to their "MyWebService" account and access information in this account.
I am stuck because the account linking does not work:
"We were unable to link <skillname> at this time"
Skill ID: amzn1.ask.skill.5c67d054-12b9-4d08-ad3e-46a478b860b9
Device: iPhone XS, iOS 12.1.2
AlexaApp Version: 2.2.250839.0
Client Version: 1.24.204798.0
Date/Time: 2019-01-23 12:07 UTC
Credentials: user "alexa", pass "amazon"
What I did:
- Launching the skill in the dev console sends an LaunchIntent to the skill endpoint.
- The web services detects that the request does not contain an acesssToken and thus sends back an createLinkAccount Card as response
- The dev console just shows "To get most out of this skill, please link your account" in the media hub but does not allow any other interaction
- Opend the Alexa app on my iPhone which is connected to my dev account. The overviews shows the "Action needed - link account" card for my skill
- After clicking on "Link account" a browser view pops up and shows the login to the OAuth auth page of my webservice
- After loggin in using my credentials (user "alexa", pass "amazon") the auth page is shown (just a basic setup) where I can accept or decline the request.
- Declining the request redirects back to an Amazon page with a message that the account could not be linked
- Accepting the request redirects back to an Amazon page showing the message "We were unable to link <skillname> at this time" and other information.
The skill is setup to use the dev environment of my webservice (dev.myservice.xyz). While the production service (myservice.xyz) has its own "Extended GlobalSign" certificate which is listed in the list of supported certificates, the dev-environment uses a simpler AlphaSSL wildcard cert which I could not find in this list. However, when using the production service and thus the GlobalSign cert instead, the result is exactly the same. Thus the cert does not seem to be the problem here.
I also used the Alexa app on other devices and the result is still the same.
I have run several test and logged the OAuth responses in detail. Everything looks just fine and I have no idea why the account linking does not work. It is a shame that in debug mode the Alexa/Amazon response does not include any helpful information that might help to find the caus of the problem.
Any advice on how to proceed from here?