Once you know what type of skill you want to build, you can determine what you need to get started.
- Create a Developer Portal Account
- What Do You Need for a Custom Skill?
- What Do You Need for a Smart Home Skill?
- What Do You Need for a Flash Briefing Skill?
- Next Steps
Create a Developer Portal Account
To build any type of skill, you need an account on the developer portal.
You use the developer portal to create a configuration for the skill. This configuration collects information about the skill, such as its name, the API you want to use, the endpoint or content feed, and other information. The Alexa service uses the configuration to determine which user requests should be sent to the service for your skill.
What Do You Need for a Custom Skill?
To build a custom skill, you need:
An Internet-accessible endpoint for hosting your cloud-based service.
Alternatively, you can build and host an HTTPS web service. In this case, you will need a cloud hosting provider and an SSL certificate.
A development environment appropriate for the language you plan to use. You can author a Lambda function in Node.js, Java, Python, or C#. You can author a web service in any language appropriate for web services.
A publicly accessible web site to host any images, audio files, or video files that you use in your skill. If you have no such files other than for a skill icon, you do not need to host any resources. One possible solution is to use an Amazon Simple Storage Service (S3) instance, (an Amazon Web Services offering).
Optionally, a device with Alexa for testing. Skills work with all devices with Alexa, such as the Amazon Echo, Echo Show, Amazon Echo Dot, Amazon Tap, Fire TV, and devices that use the Alexa Voice Service.
If you don’t have a device, you can use a basic Service Simulator for testing, although the Service Simulator cannot be used for certain features such as the Device Address API, or for screen interaction features with Alexa. The simulator is available in the developer portal where you configure the skill. You can use the simulator to type in the requests, view the responses, and listen to the responses in Alexa’s voice. You can also see what the display templates for Echo Show look like, although the display is not interactive. Note that you do need a device for full voice testing. In addition, if your skill includes display and touch interactions, you require an Echo Show to test it.
What Do You Need for a Smart Home Skill?
To build a smart home skill, you need:
- The cloud-enabled device that you want to control (such as a light, switch, or thermostat). The device must be controllable via a cloud-based service that you have access to.
- An account with Amazon Web Services, needed for creating the skill adapter as a Lambda function. Skills built with the Smart Home API must be hosted on AWS Lambda.
- A development environment appropriate for the language you plan to use. You can author a Lambda function in Node.js, Java, Python, or C#.
- An Alexa-enabled device for testing. Skills work with all Alexa-enabled devices, such as the Amazon Echo, Amazon Echo Dot, Fire TV, and devices that use the Alexa Voice Service.
What Do You Need for a Flash Briefing Skill?
To build a flash briefing skill, you need:
- An Internet-accessible content feed (using RSS or JSON) that refreshes with new content on an ongoing basis.