ask-sdk-model
- Version 1.86.0
- Published
- 654 kB
- No dependencies
- Apache-2.0 license
Install
npm i ask-sdk-model
yarn add ask-sdk-model
pnpm add ask-sdk-model
Overview
Model package for Alexa Skills Kit SDK
Index
Functions
Interfaces
Type Aliases
Namespaces
events.skillevents
- AccountLinkedBody
- AccountLinkedRequest
- NotificationSubscriptionChangedBody
- NotificationSubscriptionChangedRequest
- NotificationSubscriptionEvent
- Permission
- PermissionAcceptedRequest
- PermissionBody
- PermissionChangedRequest
- ProactiveSubscriptionChangedBody
- ProactiveSubscriptionChangedRequest
- ProactiveSubscriptionEvent
- SkillDisabledRequest
- SkillEnabledRequest
interfaces.alexa.presentation.apl
- AlexaPresentationAplInterface
- Align
- AnimatedOpacityProperty
- AnimatedProperty
- AnimatedTransformProperty
- AnimateItemCommand
- AnimateItemRepeatMode
- AudioTrack
- AutoPageCommand
- BackType
- ClearFocusCommand
- Command
- ComponentEntity
- ComponentState
- ComponentVisibleOnScreen
- ComponentVisibleOnScreenListItemTag
- ComponentVisibleOnScreenListTag
- ComponentVisibleOnScreenMediaTag
- ComponentVisibleOnScreenMediaTagStateEnum
- ComponentVisibleOnScreenPagerTag
- ComponentVisibleOnScreenScrollableTag
- ComponentVisibleOnScreenScrollableTagDirectionEnum
- ComponentVisibleOnScreenTags
- ComponentVisibleOnScreenViewportTag
- ControlMediaCommand
- ExecuteCommandsDirective
- FinishCommand
- GoBackCommand
- HideOverlayCommand
- HighlightMode
- IdleCommand
- ListRuntimeError
- ListRuntimeErrorReason
- LoadIndexListDataEvent
- LoadTokenListDataEvent
- MediaCommandType
- MoveTransformProperty
- OpenUrlCommand
- ParallelCommand
- PlayMediaCommand
- Position
- ReinflateCommand
- RenderDocumentDirective
- RenderedDocumentState
- RotateTransformProperty
- Runtime
- RuntimeError
- RuntimeErrorEvent
- ScaleTransformProperty
- ScrollCommand
- ScrollToComponentCommand
- ScrollToIndexCommand
- SelectCommand
- SendEventCommand
- SendIndexListDataDirective
- SendTokenListDataDirective
- SequentialCommand
- SetFocusCommand
- SetPageCommand
- SetStateCommand
- SetValueCommand
- ShowOverlayCommand
- SkewTransformProperty
- SpeakItemCommand
- SpeakListCommand
- TransformProperty
- UpdateIndexListDataDirective
- UserEvent
- VideoSource
interfaces.audioplayer
- AudioItem
- AudioItemMetadata
- AudioPlayerInterface
- AudioPlayerState
- CaptionData
- CaptionType
- ClearBehavior
- ClearQueueDirective
- CurrentPlaybackState
- Error
- ErrorType
- PlaybackFailedRequest
- PlaybackFinishedRequest
- PlaybackNearlyFinishedRequest
- PlaybackStartedRequest
- PlaybackStoppedRequest
- PlayBehavior
- PlayDirective
- PlayerActivity
- StopDirective
- Stream
services.datastore.v1
- CancelCommandsRequestError
- CancelCommandsRequestErrorType
- ClearCommand
- Command
- CommandsDispatchResult
- CommandsRequest
- CommandsRequestError
- CommandsRequestErrorType
- CommandsResponse
- Devices
- DispatchResultType
- PutNamespaceCommand
- PutObjectCommand
- QueuedResultRequestError
- QueuedResultRequestErrorType
- QueuedResultResponse
- RemoveNamespaceCommand
- RemoveObjectCommand
- ResponsePaginationContext
- Target
- User
services.listManagement
- AlexaList
- AlexaListItem
- AlexaListMetadata
- AlexaListsMetadata
- CreateListItemRequest
- CreateListRequest
- Error
- ForbiddenError
- Links
- ListBody
- ListCreatedEventRequest
- ListDeletedEventRequest
- ListItemBody
- ListItemsCreatedEventRequest
- ListItemsDeletedEventRequest
- ListItemState
- ListItemsUpdatedEventRequest
- ListManagementServiceClient
- ListState
- ListUpdatedEventRequest
- Status
- UpdateListItemRequest
- UpdateListRequest
services.reminderManagement
- AlertInfo
- Error
- Event
- GetReminderResponse
- GetRemindersResponse
- PushNotification
- PushNotificationStatus
- Recurrence
- RecurrenceDay
- RecurrenceFreq
- Reminder
- ReminderCreatedEventRequest
- ReminderDeletedEvent
- ReminderDeletedEventRequest
- ReminderManagementServiceClient
- ReminderRequest
- ReminderResponse
- ReminderStartedEventRequest
- ReminderStatusChangedEventRequest
- ReminderUpdatedEventRequest
- SpokenInfo
- SpokenText
- Status
- Trigger
- TriggerType
Functions
function createUserAgent
createUserAgent: (packageVersion: string, customUserAgent: string) => string;
function creating an AskSdk user agent.
Parameter packageVersion
Parameter customUserAgent
Interfaces
interface Application
interface Application {}
An object containing an application ID. This is used to verify that the request was intended for your service.
property 'applicationId'
applicationId: string;
A string representing the application identifier for your skill.
interface ConnectionCompleted
interface ConnectionCompleted {}
Represents the status and result needed to resume a skill's suspended session.
property 'result'
result?: any;
This is the result object to resume the skill's suspended session.
property 'status'
status?: Status;
property 'token'
token?: string;
This is an echo back string that skills send when during Connections.StartConnection directive. They will receive it when they get the SessionResumedRequest. It is never sent to the skill handling the request.
property 'type'
type: 'ConnectionCompleted';
interface Context
interface Context {}
property 'Alexa.DataStore.PackageManager'
'Alexa.DataStore.PackageManager'?: interfaces.alexa.datastore.packagemanager.PackageManagerState;
Provides the current state for the Alexa.DataStore.PackageManager interface.
property 'Alexa.Presentation.APL'
'Alexa.Presentation.APL'?: interfaces.alexa.presentation.apl.RenderedDocumentState;
Provides the current state for the Alexa.Presentation.APL interface.
property 'Alexa.Presentation'
'Alexa.Presentation'?: interfaces.alexa.presentation.PresentationState;
Provides the current state for the Alexa.Presentation interface.
property 'AppLink'
AppLink?: interfaces.applink.AppLinkState;
Provides the current state for app link capability.
property 'AudioPlayer'
AudioPlayer?: interfaces.audioplayer.AudioPlayerState;
Provides the current state for the AudioPlayer interface.
property 'Automotive'
Automotive?: interfaces.automotive.AutomotiveState;
Provides the automotive specific information of the device.
property 'Display'
Display?: interfaces.display.DisplayState;
Provides the current state for the Display interface.
property 'Experimentation'
Experimentation?: interfaces.alexa.experimentation.ExperimentationState;
Provides the current experimentation state
property 'Extensions'
Extensions?: interfaces.alexa.extension.ExtensionsState;
Provides the current state for Extensions interface
property 'Geolocation'
Geolocation?: interfaces.geolocation.GeolocationState;
Provides the last gathered geolocation information of the device.
property 'System'
System: interfaces.system.SystemState;
Provides information about the current state of the Alexa service and the device interacting with your skill.
property 'Viewport'
Viewport?: interfaces.viewport.ViewportState;
Provides the characteristics of a device's viewport.
property 'Viewports'
Viewports?: Array<interfaces.viewport.TypedViewportState>;
This object contains a list of viewports characteristics related to the device's viewports.
interface Device
interface Device {}
An object providing information about the device used to send the request. The device object contains both deviceId and supportedInterfaces properties. The deviceId property uniquely identifies the device. The supportedInterfaces property lists each interface that the device supports. For example, if supportedInterfaces includes AudioPlayer {}, then you know that the device supports streaming audio using the AudioPlayer interface.
property 'deviceId'
deviceId: string;
The deviceId property uniquely identifies the device. This identifier is scoped to a skill. Normally, disabling and re-enabling a skill generates a new identifier.
property 'persistentEndpointId'
persistentEndpointId?: string;
A persistent identifier for the Endpoint ID where the skill request is issued from. An endpoint represents an Alexa-connected Endpoint (like an Echo device, or an application) with which an Alexa customer can interact rather than a physical device, so it could represent applications on your fire TV or your Alexa phone app. The persistentEndpointId is a string that represents a unique identifier for the endpoint in the context of a request. It is in the Amazon Common Identifier format "amzn1.alexa.endpoint.did.{id}". This identifier space is scoped to a vendor, therefore it will stay the same regardless of skill enablement.
property 'supportedInterfaces'
supportedInterfaces: SupportedInterfaces;
Lists each interface that the device supports. For example, if supportedInterfaces includes AudioPlayer {}, then you know that the device supports streaming audio using the AudioPlayer interface
interface Intent
interface Intent {}
An object that represents what the user wants.
property 'confirmationStatus'
confirmationStatus: IntentConfirmationStatus;
property 'name'
name: string;
A string representing the name of the intent.
property 'slots'
slots?: { [key: string]: Slot;};
A map of key-value pairs that further describes what the user meant based on a predefined intent schema. The map can be empty.
interface IntentRequest
interface IntentRequest {}
An IntentRequest is an object that represents a request made to a skill based on what the user wants to do.
property 'dialogState'
dialogState: DialogState;
Enumeration indicating the status of the multi-turn dialog. This property is included if the skill meets the requirements to use the Dialog directives. Note that COMPLETED is only possible when you use the Dialog.Delegate directive. If you use intent confirmation, dialogState is considered COMPLETED if the user denies the entire intent (for instance, by answering “no” when asked the confirmation prompt). Be sure to also check the confirmationStatus property on the Intent object before fulfilling the user’s request.
property 'intent'
intent: Intent;
An object that represents what the user wants.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'IntentRequest';
interface LaunchRequest
interface LaunchRequest {}
Represents that a user made a request to an Alexa skill, but did not provide a specific intent.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'task'
task?: Task;
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'LaunchRequest';
interface ListSlotValue
interface ListSlotValue {}
Slot value containing a list of other slot value objects.
interface Permissions
interface Permissions {}
Contains a consentToken allowing the skill access to information that the customer has consented to provide, such as address information. Note that the consentToken is deprecated. Use the apiAccessToken available in the context object to determine the user’s permissions.
property 'consentToken'
consentToken?: string;
A token listing all the permissions granted for this user.
property 'scopes'
scopes?: { [key: string]: Scope;};
A map where the key is a LoginWithAmazon(LWA) scope and value is a list of key:value pairs which describe the state of user actions on the LWA scope. For e.g. "scopes" :{ "alexa::devices:all:geolocation:read":{"status":"GRANTED"}} This value of "alexa::devices:all:geolocation:read" will determine if the Geolocation data access is granted by the user, or else it will show a card of type AskForPermissionsConsent to the user to get this permission.
interface Person
interface Person {}
An object that describes the user (person) who is interacting with Alexa.
property 'accessToken'
accessToken?: string;
A token identifying the user in another system. This is only provided if the recognized user has successfully linked their skill account with their Alexa profile. The accessToken field will not appear if null.
property 'personId'
personId?: string;
A string that represents a unique identifier for the person who is interacting with Alexa. The length of this identifier can vary, but is never more than 255 characters. It is generated when a recognized user makes a request to your skill.
interface RequestEnvelope
interface RequestEnvelope {}
Request wrapper for all requests sent to your Skill.
property 'context'
context: Context;
The context object provides your skill with information about the current state of the Alexa service and device at the time the request is sent to your service. This is included on all requests. For requests sent in the context of a session (LaunchRequest and IntentRequest), the context object duplicates the user and application information that is also available in the session.
property 'request'
request: Request;
A request object that provides the details of the user’s request.
property 'session'
session?: Session;
The session object provides additional context associated with the request.
property 'version'
version: string;
The version specifier for the request.
interface Response
interface Response {}
property 'apiResponse'
apiResponse?: any;
API response object containing API response value(s)
property 'canFulfillIntent'
canFulfillIntent?: canfulfill.CanFulfillIntent;
property 'card'
card?: ui.Card;
property 'directives'
directives?: Array<Directive>;
property 'experimentation'
experimentation?: interfaces.alexa.experimentation.ExperimentTriggerResponse;
Experiment trigger response from skill
property 'outputSpeech'
outputSpeech?: ui.OutputSpeech;
property 'reprompt'
reprompt?: ui.Reprompt;
property 'shouldEndSession'
shouldEndSession?: boolean;
interface ResponseEnvelope
interface ResponseEnvelope {}
property 'response'
response: Response;
property 'sessionAttributes'
sessionAttributes?: { [key: string]: any;};
property 'userAgent'
userAgent?: string;
property 'version'
version: string;
interface Scope
interface Scope {}
This is the value of LoginWithAmazon(LWA) consent scope. This object is used as in the key-value pairs that are provided in user.permissions.scopes object
property 'status'
status?: PermissionStatus;
interface Session
interface Session {}
Represents a single execution of the alexa service
property 'application'
application: Application;
property 'attributes'
attributes?: { [key: string]: any;};
A map of key-value pairs. The attributes map is empty for requests where a new session has started with the property new set to true. When returning your response, you can include data you need to persist during the session in the sessionAttributes property. The attributes you provide are then passed back to your skill on the next request.
property 'new'
new: boolean;
A boolean value indicating whether this is a new session. Returns true for a new session or false for an existing session.
property 'sessionId'
sessionId: string;
A string that represents a unique identifier per a user’s active session.
property 'user'
user: User;
An object that describes the user making the request.
interface SessionEndedError
interface SessionEndedError {}
An error object providing more information about the error that occurred.
interface SessionEndedRequest
interface SessionEndedRequest {}
A SessionEndedRequest is an object that represents a request made to an Alexa skill to notify that a session was ended. Your service receives a SessionEndedRequest when a currently open session is closed for one of the following reasons: The user says “exit”the user does not respond or says something that does not match an intent defined in your voice interface while the device is listening for the user’s responsean error occurs
property 'error'
error?: SessionEndedError;
An error object providing more information about the error that occurred.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'reason'
reason: SessionEndedReason;
Describes why the session ended.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'SessionEndedRequest';
interface SessionResumedRequest
interface SessionResumedRequest {}
The request to resume a skill's session and tells the skill why it is resumed.
property 'cause'
cause?: Cause;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'SessionResumedRequest';
interface SimpleSlotValue
interface SimpleSlotValue {}
Slot value containing a single string value and resolutions.
property 'resolutions'
resolutions?: slu.entityresolution.Resolutions;
Contains the results of entity resolution. These are organized by authority. An authority represents the source for the data provided for the slot. For a custom slot type, the authority is the slot type you defined.
property 'type'
type: 'Simple';
property 'value'
value?: string;
A string that represents the value the user spoke for the slot. This is the actual value the user spoke, not necessarily the canonical value or one of the synonyms defined for the entity. Note that AMAZON.LITERAL slot values sent to your service are always in all lower case.
interface Slot
interface Slot {}
property 'confirmationStatus'
confirmationStatus: SlotConfirmationStatus;
Indication of whether an intent or slot has been explicitly confirmed or denied by the user, or neither.
property 'name'
name: string;
A string that represents the name of the slot.
property 'resolutions'
resolutions?: slu.entityresolution.Resolutions;
Contains the resultsof entity resolution. These are organized by authority. An authority represents the source for the data provided for the slot. For a custom slot type, the authority is the slot type you defined.
property 'slotValue'
slotValue?: SlotValue;
Object representing the value of the slot.
property 'value'
value?: string;
A string that represents the value the user spoke for the slot. This is the actual value the user spoke, not necessarily the canonical value or one of the synonyms defined for the entity. Note that AMAZON.LITERAL slot values sent to your service are always in all lower case.
interface Status
interface Status {}
Status indicates a high level understanding of the result of an execution.
interface SupportedInterfaces
interface SupportedInterfaces {}
An object listing each interface that the device supports. For example, if supportedInterfaces includes AudioPlayer {}, then you know that the device supports streaming audio using the AudioPlayer interface.
property 'Alexa.Advertisement'
'Alexa.Advertisement'?: interfaces.alexa.advertisement.AlexaAdvertisementInterface;
property 'Alexa.Presentation.APL'
'Alexa.Presentation.APL'?: interfaces.alexa.presentation.apl.AlexaPresentationAplInterface;
property 'Alexa.Presentation.APLT'
'Alexa.Presentation.APLT'?: interfaces.alexa.presentation.aplt.AlexaPresentationApltInterface;
property 'Alexa.Presentation.HTML'
'Alexa.Presentation.HTML'?: interfaces.alexa.presentation.html.AlexaPresentationHtmlInterface;
property 'AppLink'
AppLink?: interfaces.applink.AppLinkInterface;
property 'AudioPlayer'
AudioPlayer?: interfaces.audioplayer.AudioPlayerInterface;
property 'Display'
Display?: interfaces.display.DisplayInterface;
property 'Geolocation'
Geolocation?: interfaces.geolocation.GeolocationInterface;
property 'Navigation'
Navigation?: interfaces.navigation.NavigationInterface;
property 'VideoApp'
VideoApp?: interfaces.videoapp.VideoAppInterface;
interface Task
interface Task {}
This object encapsulates a specific functionality.
interface User
interface User {}
An object that describes the Amazon account for which the skill is enabled.
property 'accessToken'
accessToken?: string;
A token identifying the user in another system. This is only provided if the user has successfully linked their skill account with their Amazon account.
property 'permissions'
permissions?: Permissions;
property 'userId'
userId: string;
A string that represents a unique identifier for the user who made the request. The length of this identifier can vary, but is never more than 255 characters. The userId is automatically generated when a user enables the skill in the Alexa app. Note: Disabling and re-enabling a skill generates a new identifier.
Type Aliases
type Cause
type Cause = ConnectionCompleted;
Describes the type of the Cause.
type DialogState
type DialogState = 'STARTED' | 'IN_PROGRESS' | 'COMPLETED';
Enumeration indicating the status of the multi-turn dialog. This property is included if the skill meets the requirements to use the Dialog directives. Note that COMPLETED is only possible when you use the Dialog.Delegate directive. If you use intent confirmation, dialogState is considered COMPLETED if the user denies the entire intent (for instance, by answering “no” when asked the confirmation prompt). Be sure to also check the confirmationStatus property on the Intent object before fulfilling the user’s request.
type Directive
type Directive = | interfaces.customInterfaceController.StopEventHandlerDirective | interfaces.navigation.assistance.AnnounceRoadRegulation | interfaces.connections.SendRequestDirective | dialog.DynamicEntitiesDirective | interfaces.customInterfaceController.StartEventHandlerDirective | interfaces.gadgetController.SetLightDirective | interfaces.alexa.presentation.apl.SendIndexListDataDirective | dialog.DelegateDirective | dialog.ConfirmIntentDirective | interfaces.alexa.advertisement.InjectAds | interfaces.customInterfaceController.SendDirectiveDirective | interfaces.alexa.presentation.html.HandleMessageDirective | interfaces.alexa.presentation.apla.RenderDocumentDirective | dialog.ElicitSlotDirective | interfaces.alexa.presentation.html.StartDirective | interfaces.alexa.smartvision.snapshotprovider.GetSnapshotDirective | interfaces.audioplayer.StopDirective | dialog.ConfirmSlotDirective | interfaces.audioplayer.PlayDirective | interfaces.alexa.presentation.apl.ExecuteCommandsDirective | interfaces.display.RenderTemplateDirective | interfaces.conversations.ResetContextDirective | dialog.DelegateRequestDirective | interfaces.display.HintDirective | interfaces.connections.V1.StartConnectionDirective | interfaces.alexa.presentation.aplt.RenderDocumentDirective | interfaces.gameEngine.StartInputHandlerDirective | interfaces.videoapp.LaunchDirective | interfaces.alexa.presentation.aplt.ExecuteCommandsDirective | interfaces.gameEngine.StopInputHandlerDirective | interfaces.tasks.CompleteTaskDirective | interfaces.alexa.presentation.apl.RenderDocumentDirective | interfaces.connections.SendResponseDirective | interfaces.alexa.presentation.apl.SendTokenListDataDirective | interfaces.audioplayer.ClearQueueDirective | interfaces.alexa.presentation.apl.UpdateIndexListDataDirective;
type IntentConfirmationStatus
type IntentConfirmationStatus = 'NONE' | 'DENIED' | 'CONFIRMED';
Indication of whether an intent or slot has been explicitly confirmed or denied by the user, or neither.
type PermissionStatus
type PermissionStatus = 'GRANTED' | 'DENIED';
This denotes the status of the permission scope.
type Request
type Request = | interfaces.alexa.advertisement.AdNotRendered | interfaces.alexa.datastore.packagemanager.InstallationError | events.skillevents.SkillEnabledRequest | services.listManagement.ListUpdatedEventRequest | interfaces.alexa.presentation.apl.UserEvent | events.skillevents.SkillDisabledRequest | services.listManagement.ListItemsCreatedEventRequest | SessionResumedRequest | SessionEndedRequest | interfaces.alexa.presentation.apl.LoadIndexListDataEvent | interfaces.alexa.presentation.apl.LoadTokenListDataEvent | interfaces.audioplayer.PlaybackFailedRequest | canfulfill.CanFulfillIntentRequest | interfaces.customInterfaceController.ExpiredRequest | interfaces.alexa.presentation.html.MessageRequest | interfaces.alexa.datastore.DataStoreError | LaunchRequest | authorization.AuthorizationGrantRequest | services.reminderManagement.ReminderCreatedEventRequest | interfaces.alexa.presentation.aplt.UserEvent | interfaces.alexa.advertisement.ReadyToEnqueueAudio | services.listManagement.ListItemsUpdatedEventRequest | services.listManagement.ListCreatedEventRequest | interfaces.audioplayer.PlaybackStartedRequest | interfaces.audioplayer.PlaybackNearlyFinishedRequest | interfaces.customInterfaceController.EventsReceivedRequest | services.reminderManagement.ReminderStatusChangedEventRequest | services.listManagement.ListItemsDeletedEventRequest | services.reminderManagement.ReminderDeletedEventRequest | interfaces.connections.ConnectionsResponse | services.listManagement.ListDeletedEventRequest | interfaces.gameEngine.InputHandlerEventRequest | interfaces.playbackcontroller.PauseCommandIssuedRequest | interfaces.playbackcontroller.PlayCommandIssuedRequest | interfaces.audioplayer.PlaybackFinishedRequest | events.skillevents.ProactiveSubscriptionChangedRequest | interfaces.display.ElementSelectedRequest | events.skillevents.PermissionChangedRequest | services.reminderManagement.ReminderUpdatedEventRequest | interfaces.alexa.advertisement.AdCompleted | interfaces.alexa.datastore.packagemanager.UpdateRequest | interfaces.alexa.presentation.apl.RuntimeErrorEvent | interfaces.alexa.presentation.html.RuntimeErrorRequest | dialog.InputRequest | IntentRequest | interfaces.alexa.datastore.packagemanager.UsagesRemoved | events.skillevents.NotificationSubscriptionChangedRequest | interfaces.conversations.APIInvocationRequest | services.reminderManagement.ReminderStartedEventRequest | interfaces.audioplayer.PlaybackStoppedRequest | interfaces.playbackcontroller.PreviousCommandIssuedRequest | interfaces.alexa.datastore.packagemanager.UsagesInstalled | events.skillevents.AccountLinkedRequest | interfaces.messaging.MessageReceivedRequest | interfaces.connections.ConnectionsRequest | interfaces.system.ExceptionEncounteredRequest | events.skillevents.PermissionAcceptedRequest | interfaces.playbackcontroller.NextCommandIssuedRequest | interfaces.alexa.presentation.apla.RuntimeErrorEvent;
A request object that provides the details of the user’s request. The request body contains the parameters necessary for the service to perform its logic and generate a response.
type SessionEndedErrorType
type SessionEndedErrorType = | 'INVALID_RESPONSE' | 'DEVICE_COMMUNICATION_ERROR' | 'INTERNAL_SERVICE_ERROR' | 'ENDPOINT_TIMEOUT';
A string indicating the type of error that occurred.
type SessionEndedReason
type SessionEndedReason = 'USER_INITIATED' | 'ERROR' | 'EXCEEDED_MAX_REPROMPTS';
The reason why session ended when not initiated from the Skill itself.
type SlotConfirmationStatus
type SlotConfirmationStatus = 'NONE' | 'DENIED' | 'CONFIRMED';
An enumeration indicating whether the user has explicitly confirmed or denied the value of this slot.
type SlotValue
type SlotValue = ListSlotValue | SimpleSlotValue;
Object representing the value captured in the slot.
Namespaces
namespace authorization
namespace authorization {}
interface AuthorizationGrantBody
interface AuthorizationGrantBody {}
Authorization grant body.
property 'grant'
grant: authorization.Grant;
interface AuthorizationGrantRequest
interface AuthorizationGrantRequest {}
Represents an authorization code delivered to a skill that has out-of-session permissions without requiring account linking.
property 'body'
body: authorization.AuthorizationGrantBody;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.Authorization.Grant';
interface Grant
interface Grant {}
Information that identifies a user in Amazon Alexa systems.
type GrantType
type GrantType = 'OAuth2.AuthorizationCode';
One of the grant types supported.
namespace canfulfill
namespace canfulfill {}
interface CanFulfillIntent
interface CanFulfillIntent {}
CanFulfillIntent represents the response to canFulfillIntentRequest includes the details about whether the skill can understand and fulfill the intent request with detected slots.
property 'canFulfill'
canFulfill: canfulfill.CanFulfillIntentValues;
property 'slots'
slots?: { [key: string]: canfulfill.CanFulfillSlot;};
A map that represents skill's detailed response to each detected slot within the intent such as if skill can understand and fulfill the detected slot. This supplements the overall canFulfillIntent response and help Alexa make better ranking and arbitration decisions. The key is the name of the slot. The value is an object of type CanFulfillSlot.
interface CanFulfillIntentRequest
interface CanFulfillIntentRequest {}
An object that represents a request made to skill to query whether the skill can understand and fulfill the intent request with detected slots, before actually asking the skill to take action. Skill should be aware this is not to actually take action, skill should handle this request without causing side-effect, skill should not modify some state outside its scope or has an observable interaction with its calling functions or the outside world besides returning a value, such as playing sound,turning on/off lights, committing a transaction or a charge.
property 'dialogState'
dialogState?: DialogState;
property 'intent'
intent: Intent;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'CanFulfillIntentRequest';
interface CanFulfillSlot
interface CanFulfillSlot {}
This represents skill's capability to understand and fulfill each detected slot.
property 'canFulfill'
canFulfill?: canfulfill.CanFulfillSlotValues;
property 'canUnderstand'
canUnderstand: canfulfill.CanUnderstandSlotValues;
type CanFulfillIntentValues
type CanFulfillIntentValues = 'YES' | 'NO' | 'MAYBE';
Overall if skill can understand and fulfill the intent with detected slots. Respond YES when skill understands all slots, can fulfill all slots, and can fulfill the request in its entirety. Respond NO when skill either cannot understand the intent, cannot understand all the slots, or cannot fulfill all the slots. Respond MAYBE when skill can understand the intent, can partially or fully understand the slots, and can partially or fully fulfill the slots. The only cases where should respond MAYBE is when skill partially understand the request and can potentially complete the request if skill get more data, either through callbacks or through a multi-turn conversation with the user.
type CanFulfillSlotValues
type CanFulfillSlotValues = 'YES' | 'NO';
This field indicates whether skill can fulfill relevant action for the slot, that has been partially or fully understood. The definition of fulfilling the slot is dependent on skill and skill is required to have logic in place to determine whether a slot value can be fulfilled in the context of skill or not. Return YES if Skill can certainly fulfill the relevant action for this slot value. Return NO if skill cannot fulfill the relevant action for this slot value. For specific recommendations to set the value refer to the developer docs for more details.
type CanUnderstandSlotValues
type CanUnderstandSlotValues = 'YES' | 'NO' | 'MAYBE';
This field indicates whether skill has understood the slot value. In most typical cases, skills will do some form of entity resolution by looking up a catalog or list to determine whether they recognize the slot or not. Return YES if skill have a perfect match or high confidence match (for eg. synonyms) with catalog or list maintained by skill. Return NO if skill cannot understand or recognize the slot value. Return MAYBE if skill have partial confidence or partial match. This will be true when the slot value doesn’t exist as is, in the catalog, but a variation or a fuzzy match may exist. For specific recommendations to set the value refer to the developer docs for more details.
namespace dialog
namespace dialog {}
interface ConfirmIntentDirective
interface ConfirmIntentDirective {}
property 'type'
type: 'Dialog.ConfirmIntent';
property 'updatedIntent'
updatedIntent?: Intent;
interface ConfirmSlotDirective
interface ConfirmSlotDirective {}
property 'slotToConfirm'
slotToConfirm: string;
property 'type'
type: 'Dialog.ConfirmSlot';
property 'updatedIntent'
updatedIntent?: Intent;
interface DelegateDirective
interface DelegateDirective {}
property 'type'
type: 'Dialog.Delegate';
property 'updatedIntent'
updatedIntent?: Intent;
interface DelegateRequestDirective
interface DelegateRequestDirective {}
property 'period'
period: dialog.DelegationPeriod;
property 'target'
target: string;
The delegation target.
property 'type'
type: 'Dialog.DelegateRequest';
property 'updatedRequest'
updatedRequest?: dialog.UpdatedRequest;
interface DelegationPeriod
interface DelegationPeriod {}
The delegation period.
property 'until'
until?: dialog.DelegationPeriodUntil;
interface DynamicEntitiesDirective
interface DynamicEntitiesDirective {}
property 'type'
type: 'Dialog.UpdateDynamicEntities';
property 'types'
types?: Array<er.dynamic.EntityListItem>;
property 'updateBehavior'
updateBehavior: er.dynamic.UpdateBehavior;
interface ElicitSlotDirective
interface ElicitSlotDirective {}
property 'slotToElicit'
slotToElicit: string;
property 'type'
type: 'Dialog.ElicitSlot';
property 'updatedIntent'
updatedIntent?: Intent;
interface Input
interface Input {}
Structured input data to send to a dialog manager. Currently, this is an Alexa Conversations input instance.
interface InputRequest
interface InputRequest {}
A request representing structured data used to provide dialog input to a dialog manager.
property 'input'
input: dialog.Input;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Dialog.InputRequest';
interface UpdatedInputRequest
interface UpdatedInputRequest {}
interface UpdatedIntentRequest
interface UpdatedIntentRequest {}
type DelegationPeriodUntil
type DelegationPeriodUntil = 'EXPLICIT_RETURN' | 'NEXT_TURN';
The end of the specified delegation period. * EXPLICIT_RETURN - delegation lasts until the targeted dialog manager returns a delegate with a new target. * NEXT_TURN - delegation lasts until the next turn, which resumes with the current focused dialog manager.
type UpdatedRequest
type UpdatedRequest = dialog.UpdatedInputRequest | dialog.UpdatedIntentRequest;
The updated request to delegate. Null will delegate the current request.
namespace dynamicEndpoints
namespace dynamicEndpoints {}
interface FailureResponse
interface FailureResponse {}
Failure skill response for a Dynamic endpoint request.
property 'errorCode'
errorCode?: string;
The error code for the failure. Standard HTTP error codes will be used.
property 'errorMessage'
errorMessage?: string;
Description of the failure.
property 'originalRequestId'
originalRequestId: string;
The same request identifier as the Dynamic endpoint request for this response.
property 'type'
type: 'SkillResponseFailureMessage';
property 'version'
version: string;
The version of the response message schema used.
interface Request
interface Request {}
Request from a Dynamic endpoint connection.
property 'requestId'
requestId: string;
The requestId for the dynamic endpoint request.
property 'requestPayload'
requestPayload: string;
The request payload.
property 'type'
type: string;
Denotes type of request.
property 'version'
version: string;
The version of the request message schema used.
interface SuccessResponse
interface SuccessResponse {}
Success response for a Dynamic endpoint request.
property 'originalRequestId'
originalRequestId: string;
The same request identifier as the Dynamic endpoint request for this response.
property 'responsePayload'
responsePayload?: string;
The response payload.
property 'type'
type: 'SkillResponseSuccessMessage';
property 'version'
version: string;
The version of the response message schema used.
type BaseResponse
type BaseResponse = | dynamicEndpoints.FailureResponse | dynamicEndpoints.SuccessResponse;
Base response type.
namespace er
namespace er {}
namespace er.dynamic
namespace er.dynamic {}
interface Entity
interface Entity {}
Represents an entity that the skill wants to store. An entity has an optional Id and the value and the synonyms for the entity
interface EntityListItem
interface EntityListItem {}
Represents an array of entities of a particular type.
interface EntityValueAndSynonyms
interface EntityValueAndSynonyms {}
A container object with value and synomyms for the entity
property 'synonyms'
synonyms?: Array<string>;
An array of synonyms for the entity
property 'value'
value: string;
The entity value
type UpdateBehavior
type UpdateBehavior = 'REPLACE' | 'CLEAR';
Replace the existing dynamic entities or clear them from the catalog
namespace events
namespace events {}
namespace events.skillevents
namespace events.skillevents {}
interface AccountLinkedBody
interface AccountLinkedBody {}
property 'accessToken'
accessToken?: string;
interface AccountLinkedRequest
interface AccountLinkedRequest {}
This event indicates that a customer has linked an account in a third-party application with the Alexa app. This event is useful for an application that support out-of-session (non-voice) user interactions so that this application can be notified when the internal customer can be associated with the Alexa customer. This event is required for many applications that synchronize customer Alexa lists with application lists. During the account linking process, the Alexa app directs the user to the skill website where the customer logs in. When the customer logs in, the skill then provides an access token and a consent token to Alexa. The event includes the same access token and consent token.
property 'body'
body: events.skillevents.AccountLinkedBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.SkillAccountLinked';
interface NotificationSubscriptionChangedBody
interface NotificationSubscriptionChangedBody {}
property 'subscriptions'
subscriptions?: Array<events.skillevents.NotificationSubscriptionEvent>;
The list of to Topics that this user has subscribed/permitted to receive notification from your skill. If a customer unsubscribes for a Topic, this list will contain remaining Topics to which the customer is still subscribed to receive from your skill. If the list of subscriptions is empty, this customer has removed notification subscription for all Topics from your skill.
interface NotificationSubscriptionChangedRequest
interface NotificationSubscriptionChangedRequest {}
When a customer changes his topic subscriptions Alexa will send an event back to the skill endpoint notifying the skill owner with the most recent state of the customer's subscriptions. This is to notify skill owners of customers' interest in receiving events from one or more schemas. This event indicates a customer permission to receive notifications from your skill and contains information for that user. You need this information to know the userId in order to send notifications to individual users. Note that these events can arrive out of order, so ensure that your skill service uses the timestamp in the event to correctly record the latest topic subscription state for a customer.
property 'body'
body: events.skillevents.NotificationSubscriptionChangedBody;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.NotificationSubscriptionChanged';
interface NotificationSubscriptionEvent
interface NotificationSubscriptionEvent {}
property 'topicId'
topicId?: string;
The topicId will be one of the Topics specified in your Skill's manifest file.
interface Permission
interface Permission {}
property 'scope'
scope?: string;
The value representing the permission scope.
interface PermissionAcceptedRequest
interface PermissionAcceptedRequest {}
property 'body'
body?: events.skillevents.PermissionBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.SkillPermissionAccepted';
interface PermissionBody
interface PermissionBody {}
property 'acceptedPermissions'
acceptedPermissions?: Array<events.skillevents.Permission>;
The current list of permissions consented to on the account level. It can be an empty list if there are no account level permissions consented to.
property 'acceptedPersonPermissions'
acceptedPersonPermissions?: Array<events.skillevents.Permission>;
The current list of permissions consented to on the person level. This is only present if the request contains the ```person``` object. It can be an empty list if there are no person level permissions consented to.
interface PermissionChangedRequest
interface PermissionChangedRequest {}
property 'body'
body?: events.skillevents.PermissionBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.SkillPermissionChanged';
interface ProactiveSubscriptionChangedBody
interface ProactiveSubscriptionChangedBody {}
property 'subscriptions'
subscriptions?: Array<events.skillevents.ProactiveSubscriptionEvent>;
The list of events that this customer is currently subscribed to. If a customer unsubscribes from an event, this list will contain remaining event types to which the customer is still subscribed to receive from your skill. If the list of subscriptions is empty, this customer has unsubscribed from all event types from your skill.
interface ProactiveSubscriptionChangedRequest
interface ProactiveSubscriptionChangedRequest {}
This event indicates a customer subscription to receive events from your skill and contains information for that user and person, if recognized. You need this information to know the userId and personId in order to send events to individual users. Note that these events can arrive out of order, so ensure that your skill service uses the timestamp in the event to correctly record the latest subscription state for a customer.
property 'body'
body: events.skillevents.ProactiveSubscriptionChangedBody;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.ProactiveSubscriptionChanged';
interface ProactiveSubscriptionEvent
interface ProactiveSubscriptionEvent {}
property 'eventName'
eventName?: string;
interface SkillDisabledRequest
interface SkillDisabledRequest {}
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.SkillDisabled';
interface SkillEnabledRequest
interface SkillEnabledRequest {}
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaSkillEvent.SkillEnabled';
namespace interfaces
namespace interfaces {}
namespace interfaces.alexa
namespace interfaces.alexa {}
namespace interfaces.alexa.advertisement
namespace interfaces.alexa.advertisement {}
interface AdCompleted
interface AdCompleted {}
The skill receives this event when the ad playback is finished. More details: https://tiny.amazon.com/tbfio2ru/wamazbinviewAlexTeamASKTInSk
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
The current token representing the ad stream being played.
property 'type'
type: 'Alexa.Advertisement.AdCompleted';
interface AdNotRendered
interface AdNotRendered {}
The skill receives this event when the ad cannot be displayed or played due to certain reasons. More details: https://tiny.amazon.com/16bnoj5db/wamazbinviewAlexTeamASKTInSk
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'reason'
reason?: interfaces.alexa.advertisement.Reason;
The object encapsulates information regarding the reasons why the ad is not being rendered.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.Advertisement.AdNotRendered';
interface AlexaAdvertisementInterface
interface AlexaAdvertisementInterface {}
The interface provides skills with the ability to seamlessly integrate advertisements during their interactions with users.
interface InjectAds
interface InjectAds {}
property 'expectedPreviousToken'
expectedPreviousToken?: string;
The optional expected previous token represents the content currently being played, and it is utilized to enqueue the advertisement after the ongoing audio content. More details: https://tiny.amazon.com/l9h6ejjr/wamazbinviewAlexTeamASKTInSk
property 'type'
type: 'Alexa.Advertisement.InjectAds';
interface ReadyToEnqueueAudio
interface ReadyToEnqueueAudio {}
This event is sent to the skill as a signal that it can enqueue the next audio content in the audio player. This allows the third-party skill to resume content playback after the advertisement.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'previousToken'
previousToken?: string;
The expectedPreviousToken passed in the InjectAds request, which can be utilized by a skill to maintain an ordered list and find the next content from the current content.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
The token currently representing the ad stream being played can be used as the expectedPreviousToken in the AudioPlayer.Play directive. This allows the skill to enqueue the next content seamlessly after the ad stream.
property 'type'
type: 'Alexa.Advertisement.ReadyToEnqueueAudio';
interface Reason
interface Reason {}
The object encapsulates information regarding the reasons why the ad is not being rendered.
type ReasonCode
type ReasonCode = | 'DEVICE_OCCUPIED' | 'UNSUPPORTED_DEVICE' | 'SKILL_DAILY_CAP_LIMIT_REACHED' | 'DOMAIN_DAILY_CAP_LIMIT_REACHED' | 'INTERNAL_SERVER_ERROR' | 'AD_NOT_AVAILABLE';
The enum represents various details explaining why the ad is not being rendered.
namespace interfaces.alexa.comms
namespace interfaces.alexa.comms {}
namespace interfaces.alexa.comms.messagingcontroller
namespace interfaces.alexa.comms.messagingcontroller {}
interface StatusMap
interface StatusMap {}
A map whose key is the new status and value is the message ID list. The status of the messages whose IDs are in the list will be updated to the new status from the key.
namespace interfaces.alexa.datastore
namespace interfaces.alexa.datastore {}
interface DataStoreError
interface DataStoreError {}
This event is sent by DSCS to forward ExecutionError from device or to inform about delivery error.
property 'error'
error: interfaces.alexa.datastore.CommandsError;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.DataStore.Error';
interface DataStoreInternalError
interface DataStoreInternalError {}
Describes an execution error for unknown error from device DataStore.
interface DevicePermanantlyUnavailableError
interface DevicePermanantlyUnavailableError {}
Describes a dispatch error when device is no longer available. Skill must stop pushing data to this device in the future.
interface DeviceUnavailableError
interface DeviceUnavailableError {}
Describes a dispatch error when device is not available.
interface DispatchErrorContent
interface DispatchErrorContent {}
Content of a commands dispatch error.
property 'commands'
commands: Array<services.datastore.v1.Command>;
Commands in the same order of request time so that skill can extend deliver expiry.
property 'deviceId'
deviceId: string;
Identifier of the device where execution error happens.
interface Error
interface Error {}
Type of error. Modules can also use this event to report global error like permission denied. Supported values [STORAGE_LIMIT_EXCEEDED, PERMISSION_DENIED, VALIDATION_ERROR, DATASTORE_INTERNAL_ERROR]
interface ExecutionErrorContent
interface ExecutionErrorContent {}
Content of an execution error.
property 'deviceId'
deviceId: string;
Identifier of the device where execution error happens.
property 'failedCommand'
failedCommand: services.datastore.v1.Command;
the command that was not executed successfully because of the error.
property 'message'
message?: string;
Opaque message describing the error.
interface StorageLimitExeceededError
interface StorageLimitExeceededError {}
Describes an execution error for exceeding storage limit.
type CommandsError
type CommandsError = | interfaces.alexa.datastore.DeviceUnavailableError | interfaces.alexa.datastore.DevicePermanantlyUnavailableError | interfaces.alexa.datastore.DataStoreInternalError | interfaces.alexa.datastore.StorageLimitExeceededError;
DataStore error object payload.
namespace interfaces.alexa.datastore.packagemanager
namespace interfaces.alexa.datastore.packagemanager {}
interface AlexaDataStorePackageManagerInterface
interface AlexaDataStorePackageManagerInterface {}
Interface using which skills communicate with DataStore Package Manager on the device.
interface InstallationError
interface InstallationError {}
This event is sent by device DataStore Package Manager to let the skill developer know that there was a problem installing/updating the package.
property 'error'
error: interfaces.alexa.datastore.packagemanager.PackageError;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'packageId'
packageId: string;
Unique package identifier for a client.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.DataStore.PackageManager.InstallationError';
property 'version'
version: string;
Current version of the package trying to be installed/updated on the device.
interface Package
interface Package {}
Information of the package that is being installed on the device.
property 'packageVersion'
packageVersion: string;
Version of a package manifest schema. Currently supported schema version is 1.0.
interface PackageError
interface PackageError {}
Additional information about the package installation/update error.
interface PackageInstallUsage
interface PackageInstallUsage {}
Places where the package is going to be used on the device. This object is passed as part of the InstallRequest to the skill.
property 'instanceId'
instanceId?: string;
Identifier of the instance of the package.
property 'location'
location: interfaces.alexa.datastore.packagemanager.Locations;
interface PackageManagerState
interface PackageManagerState {}
Provides context about the list of packages installed on the device.
property 'installedPackages'
installedPackages?: Array<interfaces.alexa.datastore.packagemanager.PackageStateInformation>;
Includes all installed packages on the device.
interface PackageRemoveUsage
interface PackageRemoveUsage {}
Places where the package is going to be not used anymore on the device. This object is passed as part of the PackageRemovedRequest to the skill.
property 'instanceId'
instanceId?: string;
Identifier of the instance of the package.
property 'location'
location: interfaces.alexa.datastore.packagemanager.Locations;
interface PackageStateInformation
interface PackageStateInformation {}
State information of the DataStore package version installed on the device.
property 'packageId'
packageId: string;
Unique package identifier for a client.
property 'version'
version: string;
Unique version of a package.
interface UpdateRequest
interface UpdateRequest {}
This event is request sent by device DataStore Package Manager asking the skill developer them to update the version of the package on device.
property 'fromVersion'
fromVersion: string;
Current version of a package installed on the device.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'packageId'
packageId: string;
Unique package identifier for a client.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'toVersion'
toVersion: string;
Latest version of a package being installed on the device.
property 'type'
type: 'Alexa.DataStore.PackageManager.UpdateRequest';
interface UsagesInstalled
interface UsagesInstalled {}
This event is sent by device DataStore Package Manager to the skill developer to let them know about the usages of the packages being installed on the device.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'payload'
payload: interfaces.alexa.datastore.packagemanager.UsagesInstallRequest;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.DataStore.PackageManager.UsagesInstalled';
interface UsagesInstallRequest
interface UsagesInstallRequest {}
Information about the package that is going to be installed on the device and also where its going to be used on the device.
property 'packageId'
packageId: string;
Unique package identifier for a client.
property 'packageVersion'
packageVersion: string;
Version of a package being installed on the device.
property 'usages'
usages: Array<interfaces.alexa.datastore.packagemanager.PackageInstallUsage>;
Areas where package is going to be used on the device.
interface UsagesRemoved
interface UsagesRemoved {}
This event is sent by device DataStore Package Manager to let the skill developer know about the usages of packages removed from the device.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'payload'
payload: interfaces.alexa.datastore.packagemanager.UsagesRemovedRequest;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.DataStore.PackageManager.UsagesRemoved';
interface UsagesRemovedRequest
interface UsagesRemovedRequest {}
Information about where the package has been removed and where its not being used anymore.
property 'packageId'
packageId: string;
Unique package identifier for a client.
property 'packageVersion'
packageVersion: string;
Version of a package being removed from the device.
property 'usages'
usages: Array<interfaces.alexa.datastore.packagemanager.PackageRemoveUsage>;
Areas where package is going to be not used on the device.
type ErrorType
type ErrorType = 'INTERNAL_ERROR';
Type of package error. Allowed values are [INTERNAL_ERROR]
type Locations
type Locations = 'FAVORITE';
Location where the package can be rendered on the device.
namespace interfaces.alexa.experimentation
namespace interfaces.alexa.experimentation {}
interface ExperimentAssignment
interface ExperimentAssignment {}
Represents the state of an active experiment's assignment
property 'id'
id?: string;
property 'treatmentId'
treatmentId?: interfaces.alexa.experimentation.TreatmentId;
interface ExperimentationState
interface ExperimentationState {}
property 'activeExperiments'
activeExperiments?: Array<interfaces.alexa.experimentation.ExperimentAssignment>;
interface ExperimentTriggerResponse
interface ExperimentTriggerResponse {}
Experiment trigger response from skill
property 'triggeredExperiments'
triggeredExperiments?: Array<string>;
Contains array of triggered experiment ids
type TreatmentId
type TreatmentId = 'C' | 'T1';
Experiment treatment identifier
namespace interfaces.alexa.extension
namespace interfaces.alexa.extension {}
interface AvailableExtension
interface AvailableExtension {}
This object describes an extension that skill can request at runtime.
interface ExtensionsState
interface ExtensionsState {}
property 'available'
available: { [key: string]: interfaces.alexa.extension.AvailableExtension;};
A map from extension URI to extension object where the object space is reserved for providing authorization information or other such data in the future.
namespace interfaces.alexa.presentation
namespace interfaces.alexa.presentation {}
interface AplPresentationStateContext
interface AplPresentationStateContext {}
interface PresentationState
interface PresentationState {}
Provides context about presentations at the time of the request.
property 'contexts'
contexts?: Array<interfaces.alexa.presentation.PresentationStateContext>;
Includes all presentation contexts owned by the skill which were perceptible at the time of the request.
type PresentationStateContext
type PresentationStateContext = interfaces.alexa.presentation.AplPresentationStateContext;
namespace interfaces.alexa.presentation.apl
namespace interfaces.alexa.presentation.apl {}
interface AlexaPresentationAplInterface
interface AlexaPresentationAplInterface {}
property 'runtime'
runtime?: interfaces.alexa.presentation.apl.Runtime;
interface AnimatedOpacityProperty
interface AnimatedOpacityProperty {}
property 'from'
from?: number | string;
The starting value of the property.
property 'property'
property: 'opacity';
property 'to'
to: number | string;
The ending value of the property.
interface AnimatedTransformProperty
interface AnimatedTransformProperty {}
property 'from'
from: Array<interfaces.alexa.presentation.apl.TransformProperty>;
The starting value of the property.
property 'property'
property: 'transform';
property 'to'
to: Array<interfaces.alexa.presentation.apl.TransformProperty>;
The ending value of the property.
interface AnimateItemCommand
interface AnimateItemCommand {}
Runs a fixed-duration animation sequence on one or more properties of a single component.
property 'componentId'
componentId: string;
The ID of the animated component.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'duration'
duration: number | string;
The duration of the animation (in milliseconds).
property 'easing'
easing?: string;
The easing curve.
property 'repeatCount'
repeatCount?: number | string;
Number of times to repeat.
property 'repeatMode'
repeatMode?: interfaces.alexa.presentation.apl.AnimateItemRepeatMode;
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'AnimateItem';
property 'value'
value: Array<interfaces.alexa.presentation.apl.AnimatedProperty>;
An array of animated properties.
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface AutoPageCommand
interface AutoPageCommand {}
Automatically progress through a series of pages displayed in a Pager component. The AutoPage command finishes after the last page has been displayed for the requested time period.
property 'componentId'
componentId: string;
The id of the Pager component.
property 'count'
count?: number | string;
Number of pages to display. Defaults to all of them.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'duration'
duration?: number | string;
Time to wait between pages (in milliseconds). Defaults to 0.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'AutoPage';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ClearFocusCommand
interface ClearFocusCommand {}
Removes focus from the component that is currently in focus.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'ClearFocus';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ComponentEntity
interface ComponentEntity {}
The entity context data which was attached to an element.
interface ComponentVisibleOnScreen
interface ComponentVisibleOnScreen {}
Definition of a visible APL element shown on screen.
property 'children'
children?: Array<interfaces.alexa.presentation.apl.ComponentVisibleOnScreen>;
All child elements of the displayed element.
property 'entities'
entities?: Array<interfaces.alexa.presentation.apl.ComponentEntity>;
The entities which were attached to the element.
property 'id'
id: string;
The id of the element.
property 'position'
position: string;
Global position of the element (as seen by the device user).
property 'tags'
tags: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenTags;
The tags which were attached to the element.
property 'transform'
transform?: Array<number>;
The transform which was applied to the element's position, specified as a 6-element numeric array containing the 2D homogeneous transformation matrix. The center of the transformation coordinate system is the center of the component. The transformation array is ordered as [A,B,C,D,Tx,Ty]. For more information refer to the W3C's CSS transforms documentation.
property 'type'
type: string;
The visual appearance of the element.
property 'uid'
uid: string;
The system-generated uid of the element.
property 'visibility'
visibility?: number;
The relative visibility of the element. 0 = not visible, 1 = fully visible on screen.
interface ComponentVisibleOnScreenListItemTag
interface ComponentVisibleOnScreenListItemTag {}
An element in a scrolling list
property 'index'
index?: number;
The zero-based index of this item in its parent.
interface ComponentVisibleOnScreenListTag
interface ComponentVisibleOnScreenListTag {}
An ordered list of items
property 'highestIndexSeen'
highestIndexSeen?: number;
The index of the highest item seen.
property 'highestOrdinalSeen'
highestOrdinalSeen?: number;
The ordinal of the highest ordinal-equipped item seen.
property 'itemCount'
itemCount?: number;
The total number of items in the list.
property 'lowestIndexSeen'
lowestIndexSeen?: number;
The index of the lowest item seen.
property 'lowestOrdinalSeen'
lowestOrdinalSeen?: number;
The ordinal of the lowest ordinal-equipped item seen.
interface ComponentVisibleOnScreenMediaTag
interface ComponentVisibleOnScreenMediaTag {}
Media player
property 'allowAdjustSeekPositionBackwards'
allowAdjustSeekPositionBackwards?: boolean;
Whether the user may seek backwards relative to the current position.
property 'allowAdjustSeekPositionForward'
allowAdjustSeekPositionForward?: boolean;
Whether the user may seek forward relative to the current position.
property 'allowNext'
allowNext?: boolean;
Whether the user may move forward to the next track.
property 'allowPrevious'
allowPrevious?: boolean;
Whether the user may move backward to the previous track.
property 'entities'
entities?: Array<interfaces.alexa.presentation.apl.ComponentEntity>;
property 'positionInMilliseconds'
positionInMilliseconds?: number;
Current position of the play head from the start of the track.
property 'state'
state?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenMediaTagStateEnum;
property 'url'
url?: string;
The URL of the current media track.
interface ComponentVisibleOnScreenPagerTag
interface ComponentVisibleOnScreenPagerTag {}
A collection of items that are displayed one at a time.
property 'allowBackwards'
allowBackwards?: boolean;
Indicates whether the pager will accept a backward command.
property 'allowForward'
allowForward?: boolean;
Indicates whether the pager will accept a forward command.
property 'index'
index?: number;
The index of the current page.
property 'pageCount'
pageCount?: number;
The total number of pages.
interface ComponentVisibleOnScreenScrollableTag
interface ComponentVisibleOnScreenScrollableTag {}
A scrollable region.
property 'allowBackward'
allowBackward?: boolean;
Whether scrolling backward is accepted.
property 'allowForward'
allowForward?: boolean;
Whether scrolling forward is accepted.
property 'direction'
direction?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenScrollableTagDirectionEnum;
interface ComponentVisibleOnScreenTags
interface ComponentVisibleOnScreenTags {}
The tags which were attached to an element.
property 'checked'
checked?: boolean;
The checked state of a component that has two states.
property 'clickable'
clickable?: boolean;
A button or item that can be pressed.
property 'disabled'
disabled?: boolean;
Whether the element is disabled.
property 'focused'
focused?: boolean;
The focused state of a component that can take focus.
property 'list'
list?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenListTag;
An ordered list of items.
property 'listItem'
listItem?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenListItemTag;
An element in a sequence.
property 'media'
media?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenMediaTag;
Media player
property 'ordinal'
ordinal?: number;
A visibly numbered element.
property 'pager'
pager?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenPagerTag;
A collection of items that are displayed one at a time.
property 'scrollable'
scrollable?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenScrollableTag;
A scrolling region
property 'spoken'
spoken?: boolean;
A region of the screen that can be read out by TTS
property 'viewport'
viewport?: interfaces.alexa.presentation.apl.ComponentVisibleOnScreenViewportTag;
The entire screen in which a document is rendered.
interface ComponentVisibleOnScreenViewportTag
interface ComponentVisibleOnScreenViewportTag {}
The entire screen in which a document is rendered.
interface ControlMediaCommand
interface ControlMediaCommand {}
Control a media player to play, pause, change tracks, or perform some other common action.
property 'command'
command: interfaces.alexa.presentation.apl.MediaCommandType;
The command to issue on the media player
property 'componentId'
componentId?: string;
The name of the media playing component
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'ControlMedia';
property 'value'
value?: number | string;
Optional data value
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ExecuteCommandsDirective
interface ExecuteCommandsDirective {}
Alexa.Presentation.APL.ExecuteCommands directive used to send APL commands to a device.
property 'commands'
commands: Array<interfaces.alexa.presentation.apl.Command>;
List of Command instances
property 'token'
token: string;
A skill defined token, unique for each presentation. Must match the token provided by the skill in the RenderDocument directive used to render the original APL document.
property 'type'
type: 'Alexa.Presentation.APL.ExecuteCommands';
interface FinishCommand
interface FinishCommand {}
The finish command closes the current APL document and exits.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Finish';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface GoBackCommand
interface GoBackCommand {}
GoBack command POJO for the backstack APL extension.
property 'backType'
backType: interfaces.alexa.presentation.apl.BackType;
property 'backValue'
backValue: string;
The value of go back command.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'GoBack';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface HideOverlayCommand
interface HideOverlayCommand {}
HideOverlay Command used by television shopping skill.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'duration'
duration?: number;
The duration of HideOverlay Command.
property 'overlayLayoutId'
overlayLayoutId: string;
The id of overlay Layout.
property 'overlayWidth'
overlayWidth?: string;
The overlay width.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'HideOverlay';
property 'underlyingLayoutId'
underlyingLayoutId?: string;
The id of underlying Layout.
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface IdleCommand
interface IdleCommand {}
The idle command does nothing. It may be a placeholder or used to insert a calculated delay in a longer series of commands.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Idle';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ListRuntimeError
interface ListRuntimeError {}
Reports an error with list functionality.
property 'listId'
listId: string;
The identifier of the list in which the error occurred.
property 'listVersion'
listVersion?: number;
The listVersion in which the error occurred.
property 'message'
message: string;
A human-readable description of the error.
property 'operationIndex'
operationIndex?: number;
The index of the operation which caused the error (if known)
property 'reason'
reason: interfaces.alexa.presentation.apl.ListRuntimeErrorReason;
property 'token'
token?: string;
The token as specified in the presentation's RenderDocument directive.
property 'type'
type: 'LIST_ERROR';
interface LoadIndexListDataEvent
interface LoadIndexListDataEvent {}
The LoadIndexListData event is sent to the skill to retrieve additional list items.
property 'correlationToken'
correlationToken: string;
An identifier generated by a device that is used to correlate requests with their corresponding response directives.
property 'count'
count: number;
The number of items to fetch. Examples: startIndex = 10, count = 2: Skill is expected to return items at indexes 10 and 11. startIndex = -2, count = 5: Skill is expected to return items at indexes -2, -1, 0, 1 and 2
property 'listId'
listId: string;
The identifier of the list whose items to fetch.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'startIndex'
startIndex: number;
The lowest index of the items to fetch (inclusive)
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token: string;
The token as specified in the presentation's RenderDocument directive.
property 'type'
type: 'Alexa.Presentation.APL.LoadIndexListData';
interface LoadTokenListDataEvent
interface LoadTokenListDataEvent {}
The LoadTokenListData event is sent to the skill to retrieve additional list items.
property 'correlationToken'
correlationToken: string;
An identifier generated by a device that is used to correlate requests with their corresponding response directives.
property 'listId'
listId: string;
The identifier of the list whose items to fetch.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'pageToken'
pageToken: string;
Opaque token of the array of items to fetch. The skill is expected to be able to identify whether the token represents a forward or backward scroll direction.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token: string;
The token as specified in the presentation's RenderDocument directive.
property 'type'
type: 'Alexa.Presentation.APL.LoadTokenListData';
interface MoveTransformProperty
interface MoveTransformProperty {}
property 'translateX'
translateX?: string;
Distance to translate the object to the right.
property 'translateY'
translateY?: string;
Distance to translate the object down.
interface OpenUrlCommand
interface OpenUrlCommand {}
Opens a url with web browser or other application on the device. The APL author is responsible for providing a suitable URL that works on the current device.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'onFail'
onFail?: Array<interfaces.alexa.presentation.apl.Command>;
Commands to execute if the URL fails to open
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'source'
source: string;
The URL to open
property 'type'
type: 'OpenURL';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ParallelCommand
interface ParallelCommand {}
Execute a series of commands in parallel. The parallel command starts executing all child command simultaneously. The parallel command is considered finished when all of its child commands have finished. When the parallel command is terminated early, all currently executing commands are terminated.
property 'commands'
commands: Array<interfaces.alexa.presentation.apl.Command>;
An un-ordered array of commands to execute in parallel. Once all commands have finished executing the parallel command finishes. Please note that the delay of parallel command and the delay of each command are additive.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Parallel';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface PlayMediaCommand
interface PlayMediaCommand {}
Plays media on a media player (currently only a Video player; audio may be added in the future). The media may be on the background audio track or may be sequenced with speak directives).
property 'audioTrack'
audioTrack?: interfaces.alexa.presentation.apl.AudioTrack;
The command to issue on the media player
property 'componentId'
componentId?: string;
The name of the media playing component
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'source'
source: Array<interfaces.alexa.presentation.apl.VideoSource>;
The media source
property 'type'
type: 'PlayMedia';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ReinflateCommand
interface ReinflateCommand {}
The reinflate command reinflates the current document with updated configuration properties.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Reinflate';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface RenderDocumentDirective
interface RenderDocumentDirective {}
property 'datasources'
datasources?: { [key: string]: any;};
Data sources to bind to the document when rendering.
property 'document'
document?: { [key: string]: any;};
Depending on the document type, it represents either an entire APL document or a reference Link to the document. In a Link object, the value of the 'src' should follow a URI format defined like 'doc://alexa/apl/documents/<document_id>'. The 'document_id' is a reference to the APL document that the developer stores through APL Authoring Tool.
property 'packages'
packages?: Array<any>;
A list of packages including layouts, styles, and images etc.
property 'sources'
sources?: { [key: string]: any;};
An object containing named documents or links. These documents can be referenced by the “template” parameter in the transformer.
property 'token'
token?: string;
A unique identifier for the presentation.
property 'type'
type: 'Alexa.Presentation.APL.RenderDocument';
interface RenderedDocumentState
interface RenderedDocumentState {}
Provides context for any APL content shown on screen.
property 'componentsVisibleOnScreen'
componentsVisibleOnScreen?: Array<interfaces.alexa.presentation.apl.ComponentVisibleOnScreen>;
List of the visible APL components currently shown on screen.
property 'dataSources'
dataSources?: Array<any>;
List of registered data sources' associated metadata
property 'token'
token?: string;
The token specified in the RenderDocument directive which rendered the content shown on screen.
property 'version'
version?: string;
The APL version of the document which rendered the content shown on screen.
interface RotateTransformProperty
interface RotateTransformProperty {}
property 'rotate'
rotate?: number | string;
Rotation angle, in degrees. Positive angles rotate in the clockwise direction.
interface Runtime
interface Runtime {}
Contains the runtime information for the interface.
property 'maxVersion'
maxVersion?: string;
Maximum APL version supported by the runtime.
interface RuntimeErrorEvent
interface RuntimeErrorEvent {}
Notifies the skill of any errors in APL functionality.
property 'errors'
errors: Array<interfaces.alexa.presentation.apl.RuntimeError>;
An array of errors encountered while running the APL presentation.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token: string;
The unique identifier of the presentation in which the error occurred.
property 'type'
type: 'Alexa.Presentation.APL.RuntimeError';
interface ScaleTransformProperty
interface ScaleTransformProperty {}
interface ScrollCommand
interface ScrollCommand {}
Scroll a ScrollView or Sequence forward or backward by a number of pages. The Scroll command has the following properties in addition to the regular command properties.
property 'componentId'
componentId: string;
The id of the component.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'distance'
distance?: number | string;
The number of pages to scroll. Defaults to 1.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Scroll';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ScrollToComponentCommand
interface ScrollToComponentCommand {}
Scroll forward or backward through a ScrollView or Sequence to ensure that a particular component is in view.
property 'align'
align?: interfaces.alexa.presentation.apl.Align;
property 'componentId'
componentId?: string;
The id of the component. If omitted, the component issuing the ScrollToComponent command is used.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'ScrollToComponent';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ScrollToIndexCommand
interface ScrollToIndexCommand {}
Scroll forward or backward through a ScrollView or Sequence to ensure that a particular child component is in view.
property 'align'
align?: interfaces.alexa.presentation.apl.Align;
property 'componentId'
componentId: string;
The id of the component.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'index'
index: number | string;
The 0-based index of the child to display.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'ScrollToIndex';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SelectCommand
interface SelectCommand {}
Select a single command from an array of commands and data.
property 'commands'
commands: Array<interfaces.alexa.presentation.apl.Command>;
An ordered list of commands to select from.
property 'data'
data?: Array<any>;
A list of data to map against the commands.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'otherwise'
otherwise?: Array<interfaces.alexa.presentation.apl.Command>;
Commands to execute if nothing else runs.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Select';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SendEventCommand
interface SendEventCommand {}
The SendEvent command allows the APL author to generate and send an event to Alexa.
property 'arguments'
arguments?: Array<string>;
An array of argument data to pass to Alexa.
property 'components'
components?: Array<string>;
An array of components to extract value data from and provide to Alexa.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'SendEvent';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SendIndexListDataDirective
interface SendIndexListDataDirective {}
Returned in response to a LoadIndexListData event, containing the requested items and metadata for further interaction.
property 'correlationToken'
correlationToken?: string;
The correlation token supplied in the LoadTokenListData event. This parameter is mandatory if the skill is responding to a LoadIndexListData request, the skill response will be rejected if the expected correlationToken is not specified.
property 'items'
items?: Array<any>;
Array of objects to be added to the device cache.
property 'listId'
listId: string;
The identifier of the list whose items are contained in this response.
property 'listVersion'
listVersion?: number;
The new version of the list after loading the items supplied in this directive. List versions increase sequentially, implicitly starting at 0 for the definition specified in the presentation's RenderDocument directive.
property 'maximumExclusiveIndex'
maximumExclusiveIndex?: number;
The last valid index of the skill-managed array plus one, i.e. exclusive value. When populated, this value replaces any value that was specified in a previous interaction. Continued absence of this property indicates that the maximum index is not yet known and further forwards scrolling is possible. If this is one more than the index of the last item returned then no further forwards scrolling is possible.
property 'minimumInclusiveIndex'
minimumInclusiveIndex?: number;
The index of the 1st item in the skill-managed array. When populated, this value replaces any value that was specified in a previous interaction. Continued absence of this property indicates that the minimum index is not yet known and further backwards scrolling is possible. If this is equal to the index of the 1st item returned then no further backwards scrolling is possible.
property 'startIndex'
startIndex: number;
Index of the first element in the items array.
property 'type'
type: 'Alexa.Presentation.APL.SendIndexListData';
interface SendTokenListDataDirective
interface SendTokenListDataDirective {}
Returned in response to a LoadTokenListData event, containing the requested items and metadata for further interaction.
property 'correlationToken'
correlationToken?: string;
The correlation token supplied in the LoadTokenListData event. This parameter is mandatory if the skill is responding to a LoadTokenListData request, the skill response will be rejected if the expected correlationToken is not specified.
property 'items'
items?: Array<any>;
Array of objects to be added to the device cache.
property 'listId'
listId: string;
The identifier of the list whose items are contained in this response.
property 'nextPageToken'
nextPageToken?: string;
Opaque token to retrieve the next page of list items data. Absence of this property indicates that the last item in the list has been reached in the scroll direction.
property 'pageToken'
pageToken: string;
Opaque token for the array of items which are contained in this response. Ignored by the system if correlationToken is specified, but considered less cognitive overhead to have the developer always include & assists platform debugging.
property 'type'
type: 'Alexa.Presentation.APL.SendTokenListData';
interface SequentialCommand
interface SequentialCommand {}
A sequential command executes a series of commands in order. The sequential command executes the command list in order, waiting for the previous command to finish before executing the next. The sequential command is finished when all of its child commands have finished. When the Sequential command is terminated early, the currently executing command is terminated and no further commands are executed.
property 'catch'
catch?: Array<interfaces.alexa.presentation.apl.Command>;
An ordered list of commands to execute if this sequence is prematurely terminated.
property 'commands'
commands: Array<interfaces.alexa.presentation.apl.Command>;
An array of commands to execute. The commands execute in order; each command must finish before the next can begin. Please note that the delay of sequential command and the delay of the first command in the sequence are additive.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'finally'
finally?: Array<interfaces.alexa.presentation.apl.Command>;
An ordered list of commands to execute after the normal commands and the catch commands.
property 'repeatCount'
repeatCount?: number | string;
The number of times to repeat this series of commands. Defaults to 0. Negative values will be ignored. Note that the delay assigned to overall sequential command only applies the first time. For example, in the sample sequential command below the first SendEvent fires at 3000 milliseconds, the second at 5000, the first SendEvent fires again at 7000 milliseconds, and so forth. {"type": "Sequential","delay": 1000,"repeatCount": 2,"commands": [{ "type": "SendEvent","delay": 2000},{"type": "SendEvent","delay": 2000}]}
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'Sequential';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SetFocusCommand
interface SetFocusCommand {}
Changes the actionable component that is in focus. Only one component may have focus at a time.
property 'componentId'
componentId: string;
The ID of the component to set focus on.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'SetFocus';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SetPageCommand
interface SetPageCommand {}
Change the page displayed in a Pager component. The SetPage command finishes when the item is fully in view.
property 'componentId'
componentId: string;
The id of the Pager component.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'position'
position?: interfaces.alexa.presentation.apl.Position;
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'SetPage';
property 'value'
value: number | string;
The distance to move. May be an absolute value or a relative value.
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SetStateCommand
interface SetStateCommand {}
The SetState command changes one of the component’s state settings. The SetState command can be used to change the checked, disabled, and focused states. The karaoke and pressed states may not be directly set; use the Select command or SpeakItem commands to change those states. Also, note that the focused state may only be set - it can’t be cleared.
property 'componentId'
componentId?: string;
The id of the component whose value should be set.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'state'
state: interfaces.alexa.presentation.apl.ComponentState;
The name of the state to set. Must be one of “checked”, “disabled”, and “focused”.
property 'type'
type: 'SetState';
property 'value'
value: boolean | string;
The value to set on the property
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SetValueCommand
interface SetValueCommand {}
Change a dynamic property of a component without redrawing the screen.
property 'componentId'
componentId?: string;
The id of the component whose value to set.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'property'
property: string;
The name of the property to set.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'SetValue';
property 'value'
value: string;
The property value to set.
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface ShowOverlayCommand
interface ShowOverlayCommand {}
ShowOverlay Command used by television shopping skill.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'duration'
duration?: number;
The duration of ShowOverlay Command.
property 'overlayLayoutId'
overlayLayoutId: string;
The id of overlay Layout.
property 'overlayWidth'
overlayWidth?: string;
The overlay width.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'ShowOverlay';
property 'underlyingLayoutId'
underlyingLayoutId?: string;
The id of underlying Layout.
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SkewTransformProperty
interface SkewTransformProperty {}
interface SpeakItemCommand
interface SpeakItemCommand {}
Reads the contents of a single item on the screen. By default the item will be scrolled into view if it is not currently visible.
property 'align'
align?: interfaces.alexa.presentation.apl.Align;
property 'componentId'
componentId: string;
The id of the component to speak.
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'highlightMode'
highlightMode?: interfaces.alexa.presentation.apl.HighlightMode;
property 'minimumDwellTime'
minimumDwellTime?: number | string;
The minimum number of milliseconds that an item should be highlighted for. Defaults to 0.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'type'
type: 'SpeakItem';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface SpeakListCommand
interface SpeakListCommand {}
Read the contents of a range of items inside a common container. Each item will scroll into view before speech. Each item should have a speech property, but it is not required.
property 'align'
align?: interfaces.alexa.presentation.apl.Align;
property 'componentId'
componentId: string;
The id of the component to read.
property 'count'
count: number | string;
The number of items to speak
property 'delay'
delay?: number | string;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'minimumDwellTime'
minimumDwellTime?: number | string;
The minimum number of milliseconds that an item will be highlighted for. Defaults to 0.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'sequencer'
sequencer?: string;
Specify the sequencer that should execute this command.
property 'start'
start: number | string;
The 0-based index of the first item to speak
property 'type'
type: 'SpeakList';
property 'when'
when?: boolean;
If false, the execution of the command is skipped. Defaults to true.
interface UpdateIndexListDataDirective
interface UpdateIndexListDataDirective {}
Updates the content of an dynamicIndexList datasource which has been previously communicated to an Alexa device.
property 'listId'
listId: string;
The identifier of the dynamicIndexList to update.
property 'listVersion'
listVersion: number;
The new version of the list after applying the updates specified in this directive. List versions increase sequentially, implicitly starting at 0 for the definition specified in the presentation's RenderDocument directive.
property 'operations'
operations: Array<interfaces.alexa.presentation.apl.listoperations.Operation>;
An array of changes which are to be applied to the items in the dynamicIndexList.
property 'token'
token: string;
The unique identifier for the presentation containing the dynamicIndexList.
property 'type'
type: 'Alexa.Presentation.APL.UpdateIndexListData';
interface UserEvent
interface UserEvent {}
property 'arguments'
arguments?: Array<any>;
The array of argument data to pass to Alexa.
property 'components'
components?: any;
Components associated with the request.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'source'
source?: any;
Meta-information about what caused the event to be generated.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
A unique token for the active presentation.
property 'type'
type: 'Alexa.Presentation.APL.UserEvent';
interface VideoSource
interface VideoSource {}
The source property holds the video clip or sequence of video clips to play.
property 'description'
description?: string;
Optional description of this source material
property 'duration'
duration?: number | string;
Duration of time to play. If not set, defaults to the entire stream. Expressed in milliseconds.
property 'offset'
offset?: number | string;
Offset to start playing at in the stream (defaults to 0).
property 'repeatCount'
repeatCount?: number | string;
Number of times to loop the video. Defaults to 0.
property 'url'
url: string;
Media source material
type Align
type Align = 'center' | 'first' | 'last' | 'visible';
The alignment of the item after scrolling. Defaults to visible.
type AnimatedProperty
type AnimatedProperty = | interfaces.alexa.presentation.apl.AnimatedOpacityProperty | interfaces.alexa.presentation.apl.AnimatedTransformProperty;
type AnimateItemRepeatMode
type AnimateItemRepeatMode = 'restart' | 'reverse';
How repeated animations will play.
type AudioTrack
type AudioTrack = 'foreground' | 'background' | 'none';
The audio track to play on. Defaults to “foreground”
type BackType
type BackType = 'count' | 'index' | 'id';
The type of back navigation to use. Defaults to count.
type Command
type Command = | interfaces.alexa.presentation.apl.SetPageCommand | interfaces.alexa.presentation.apl.ControlMediaCommand | interfaces.alexa.presentation.apl.FinishCommand | interfaces.alexa.presentation.apl.AutoPageCommand | interfaces.alexa.presentation.apl.PlayMediaCommand | interfaces.alexa.presentation.apl.GoBackCommand | interfaces.alexa.presentation.apl.ScrollCommand | interfaces.alexa.presentation.apl.IdleCommand | interfaces.alexa.presentation.apl.AnimateItemCommand | interfaces.alexa.presentation.apl.SendEventCommand | interfaces.alexa.presentation.apl.ShowOverlayCommand | interfaces.alexa.presentation.apl.SpeakListCommand | interfaces.alexa.presentation.apl.SelectCommand | interfaces.alexa.presentation.apl.HideOverlayCommand | interfaces.alexa.presentation.apl.SequentialCommand | interfaces.alexa.presentation.apl.SetStateCommand | interfaces.alexa.presentation.apl.SpeakItemCommand | interfaces.alexa.presentation.apl.ParallelCommand | interfaces.alexa.presentation.apl.OpenUrlCommand | interfaces.alexa.presentation.apl.ReinflateCommand | interfaces.alexa.presentation.apl.ClearFocusCommand | interfaces.alexa.presentation.apl.ScrollToIndexCommand | interfaces.alexa.presentation.apl.SetValueCommand | interfaces.alexa.presentation.apl.SetFocusCommand | interfaces.alexa.presentation.apl.ScrollToComponentCommand;
A message that can change the visual or audio presentation of the content on the screen.
type ComponentState
type ComponentState = 'checked' | 'disabled' | 'focused';
Component state.
type ComponentVisibleOnScreenMediaTagStateEnum
type ComponentVisibleOnScreenMediaTagStateEnum = 'idle' | 'playing' | 'paused';
Media player stage posible states
type ComponentVisibleOnScreenScrollableTagDirectionEnum
type ComponentVisibleOnScreenScrollableTagDirectionEnum = 'horizontal' | 'vertical';
Scrolling direction
type HighlightMode
type HighlightMode = 'block' | 'line';
How highlighting is applied: on a line-by-line basis, or to the entire block. Defaults to block.
type ListRuntimeErrorReason
type ListRuntimeErrorReason = | 'INVALID_PRESENTATION_TOKEN' | 'INVALID_LIST_ID' | 'INVALID_DATASOURCE' | 'INVALID_OPERATION' | 'MISSING_LIST_VERSION' | 'DUPLICATE_LIST_VERSION' | 'LIST_INDEX_OUT_OF_RANGE' | 'MISSING_LIST_VERSION_IN_SEND_DATA' | 'LOAD_TIMEOUT' | 'INCONSISTENT_LIST_ID' | 'INCONSISTENT_PAGE_TOKEN' | 'INCONSISTENT_PAGE_ITEMS' | 'DUPLICATE_PAGE_TOKEN' | 'OCCUPIED_LIST_INDEX' | 'LOAD_INDEX_OUT_OF_RANGE' | 'INCONSISTENT_RANGE' | 'MISSING_LIST_ITEMS' | 'INTERNAL_ERROR';
The reason for the failure.
type MediaCommandType
type MediaCommandType = | 'play' | 'pause' | 'next' | 'previous' | 'rewind' | 'seek' | 'setTrack';
The command enumerated value is the operation that should be performed on the media player.
type Position
type Position = 'absolute' | 'relative';
Whether the value is a relative or absolute offset. Defaults to absolute.
type RuntimeError
type RuntimeError = interfaces.alexa.presentation.apl.ListRuntimeError;
A description of an error in APL functionality.
type TransformProperty
type TransformProperty = | interfaces.alexa.presentation.apl.MoveTransformProperty | interfaces.alexa.presentation.apl.ScaleTransformProperty | interfaces.alexa.presentation.apl.RotateTransformProperty | interfaces.alexa.presentation.apl.SkewTransformProperty;
Transform property to apply to a component.
namespace interfaces.alexa.presentation.apl.listoperations
namespace interfaces.alexa.presentation.apl.listoperations {}
interface DeleteItemOperation
interface DeleteItemOperation {}
Deletes an item at a specified index in a dynamicIndexList.
property 'index'
index: number;
The position of the item in the dynamicIndexList to which the operation is to be applied. For inserts and deletes that operate on multiple items, this value represents the starting index, with onward inserts/deletes applying to consecutively increasing positions.
property 'type'
type: 'DeleteItem';
interface DeleteMultipleItemsOperation
interface DeleteMultipleItemsOperation {}
Deletes items at consecutive indexes in a dynamicIndexList.
property 'count'
count: number;
The number of items to delete.
property 'index'
index: number;
The position of the item in the dynamicIndexList to which the operation is to be applied. For inserts and deletes that operate on multiple items, this value represents the starting index, with onward inserts/deletes applying to consecutively increasing positions.
property 'type'
type: 'DeleteMultipleItems';
interface InsertItemOperation
interface InsertItemOperation {}
Inserts a new item at a specified index in a dynamicIndexList.
property 'index'
index: number;
The position of the item in the dynamicIndexList to which the operation is to be applied. For inserts and deletes that operate on multiple items, this value represents the starting index, with onward inserts/deletes applying to consecutively increasing positions.
property 'item'
item: any;
The new item to be inserted.
property 'type'
type: 'InsertItem';
interface InsertMultipleItemsOperation
interface InsertMultipleItemsOperation {}
Inserts an array of items into consecutive indexes in a dynamicIndexList.
property 'index'
index: number;
The position of the item in the dynamicIndexList to which the operation is to be applied. For inserts and deletes that operate on multiple items, this value represents the starting index, with onward inserts/deletes applying to consecutively increasing positions.
property 'items'
items: Array<any>;
The new items to be inserted.
property 'type'
type: 'InsertMultipleItems';
interface SetItemOperation
interface SetItemOperation {}
Sets an item at a specified index in a dynamicIndexList.
property 'index'
index: number;
The position of the item in the dynamicIndexList to which the operation is to be applied. For inserts and deletes that operate on multiple items, this value represents the starting index, with onward inserts/deletes applying to consecutively increasing positions.
property 'item'
item: any;
The replacement item.
property 'type'
type: 'SetItem';
type Operation
type Operation = | interfaces.alexa.presentation.apl.listoperations.SetItemOperation | interfaces.alexa.presentation.apl.listoperations.InsertMultipleItemsOperation | interfaces.alexa.presentation.apl.listoperations.DeleteMultipleItemsOperation | interfaces.alexa.presentation.apl.listoperations.InsertItemOperation | interfaces.alexa.presentation.apl.listoperations.DeleteItemOperation;
An operation which adds, removes or replaces item(s) defined in a dynamicIndexList.
namespace interfaces.alexa.presentation.apla
namespace interfaces.alexa.presentation.apla {}
interface AudioSourceRuntimeError
interface AudioSourceRuntimeError {}
This error type occurs when the cloud fails to retrieve an audio file from a remote source, such as one specified from within an Audio component.
interface DocumentRuntimeError
interface DocumentRuntimeError {}
This error type occurs when the cloud fails to render due to an incorrect or malformed document or data sources.
interface LinkRuntimeError
interface LinkRuntimeError {}
This error type occurs when the cloud fails to execute a Link typed document.
interface RenderDocumentDirective
interface RenderDocumentDirective {}
property 'datasources'
datasources?: { [key: string]: any;};
Data sources to bind to the document when rendering.
property 'document'
document?: { [key: string]: any;};
Depending on the document type, it represents either an entire APLA document or a reference Link to the document. In a Link object, the value of the 'src' should follow a URI format defined like 'doc://alexa/apla/documents/<document_id>'. The 'document_id' is a reference to the APLA document that the developer stores through APLA Authoring Tool.
property 'token'
token?: string;
A unique identifier for the presentation.
property 'type'
type: 'Alexa.Presentation.APLA.RenderDocument';
interface RenderRuntimeError
interface RenderRuntimeError {}
This error type occurs when the the cloud based audio mixing service fails to render the audio due to service or user failure.
interface RuntimeErrorEvent
interface RuntimeErrorEvent {}
Notifies the skill of any errors in APLA functionality.
property 'errors'
errors: Array<interfaces.alexa.presentation.apla.RuntimeError>;
An array of errors encountered while running the APLA presentation.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token: string;
The unique identifier of the presentation in which the error occurred.
property 'type'
type: 'Alexa.Presentation.APLA.RuntimeError';
type AudioSourceErrorReason
type AudioSourceErrorReason = | 'UNKNOWN_ERROR' | 'INTERNAL_SERVER_ERROR' | 'NOT_FOUND_ERROR' | 'SSL_HANDSHAKE_ERROR' | 'TIMEOUT_ERROR' | 'INVALID_URI_ERROR' | 'HTTPS_ERROR';
The reason for the failure.
type DocumentErrorReason
type DocumentErrorReason = 'UNKNOWN_ERROR' | 'INTERNAL_SERVER_ERROR';
The reason for the failure.
type LinkErrorReason
type LinkErrorReason = 'UNKNOWN_ERROR' | 'INTERNAL_SERVER_ERROR' | 'NOT_FOUND_ERROR';
The reason for the failure.
type RenderErrorReason
type RenderErrorReason = 'UNKNOWN_ERROR' | 'INTERNAL_SERVER_ERROR';
The reason for the failure.
type RuntimeError
type RuntimeError = | interfaces.alexa.presentation.apla.AudioSourceRuntimeError | interfaces.alexa.presentation.apla.RenderRuntimeError | interfaces.alexa.presentation.apla.DocumentRuntimeError | interfaces.alexa.presentation.apla.LinkRuntimeError;
A description of an error in APLA functionality.
namespace interfaces.alexa.presentation.aplt
namespace interfaces.alexa.presentation.aplt {}
interface AlexaPresentationApltInterface
interface AlexaPresentationApltInterface {}
property 'runtime'
runtime?: interfaces.alexa.presentation.aplt.Runtime;
interface AutoPageCommand
interface AutoPageCommand {}
Automatically progress through a series of pages displayed in a Pager component. The AutoPage command finishes after the last page has been displayed for the requested time period.
property 'componentId'
componentId: string;
The id of the Pager component.
property 'count'
count?: number | string;
Number of pages to display. Defaults to all of them.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'duration'
duration?: number | string;
Time to wait between pages (in milliseconds). Defaults to 0.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'AutoPage';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface ExecuteCommandsDirective
interface ExecuteCommandsDirective {}
Alexa.Presentation.APLT.ExecuteCommands directive used to send APL-T commands to a device.
property 'commands'
commands: Array<interfaces.alexa.presentation.aplt.Command>;
List of Command instances
property 'token'
token: string;
A skill defined token, unique for each presentation. Must match the token provided by the skill in the RenderDocument directive used to render the original APL document.
property 'type'
type: 'Alexa.Presentation.APLT.ExecuteCommands';
interface IdleCommand
interface IdleCommand {}
The idle command does nothing. It may be a placeholder or used to insert a calculated delay in a longer series of commands.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'Idle';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface ParallelCommand
interface ParallelCommand {}
Execute a series of commands in parallel. The parallel command starts executing all child command simultaneously. The parallel command is considered finished when all of its child commands have finished. When the parallel command is terminated early, all currently executing commands are terminated.
property 'commands'
commands: Array<interfaces.alexa.presentation.aplt.Command>;
An un-ordered array of commands to execute in parallel. Once all commands have finished executing the parallel command finishes. Please note that the delay of parallel command and the delay of each command are additive.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'Parallel';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface RenderDocumentDirective
interface RenderDocumentDirective {}
property 'datasources'
datasources?: { [key: string]: any;};
Data sources to bind to the document when rendering.
property 'document'
document?: { [key: string]: any;};
Depending on the document type, it represents either an entire APLT document or a reference Link to the document. In a Link object, the value of the 'src' should follow a URI format defined like 'doc://alexa/aplt/documents/<document_id>'. The 'document_id' is a reference to the APLT document that the developer stores through APL Authoring Tool.
property 'targetProfile'
targetProfile?: interfaces.alexa.presentation.aplt.TargetProfile;
One of supported profiles in character display. Default value is NONE.
property 'token'
token?: string;
A unique identifier for the presentation.
property 'type'
type: 'Alexa.Presentation.APLT.RenderDocument';
interface Runtime
interface Runtime {}
Contains the runtime information for the interface.
property 'maxVersion'
maxVersion?: string;
Maximum APL-T version supported by the runtime.
interface ScrollCommand
interface ScrollCommand {}
Scroll a ScrollView or Sequence forward or backward by a number of pages. The Scroll command has the following properties in addition to the regular command properties.
property 'componentId'
componentId: string;
The id of the component.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'distance'
distance?: number | string;
The number of pages to scroll. Defaults to 1.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'Scroll';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface SendEventCommand
interface SendEventCommand {}
The SendEvent command allows the APL author to generate and send an event to Alexa.
property 'arguments'
arguments?: Array<string>;
An array of argument data to pass to Alexa.
property 'components'
components?: Array<string>;
An array of components to extract value data from and provide to Alexa.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'SendEvent';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface SequentialCommand
interface SequentialCommand {}
A sequential command executes a series of commands in order. The sequential command executes the command list in order, waiting for the previous command to finish before executing the next. The sequential command is finished when all of its child commands have finished. When the Sequential command is terminated early, the currently executing command is terminated and no further commands are executed.
property 'catch'
catch?: Array<interfaces.alexa.presentation.aplt.Command>;
An ordered list of commands to execute if this sequence is prematurely terminated.
property 'commands'
commands: Array<interfaces.alexa.presentation.aplt.Command>;
An array of commands to execute. The commands execute in order; each command must finish before the next can begin. Please note that the delay of sequential command and the delay of the first command in the sequence are additive.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'finally'
finally?: Array<interfaces.alexa.presentation.aplt.Command>;
An ordered list of commands to execute after the normal commands and the catch commands.
property 'repeatCount'
repeatCount?: number | string;
The number of times to repeat this series of commands. Defaults to 0. Negative values will be ignored. Note that the delay assigned to overall sequential command only applies the first time. For example, in the sample sequential command below the first SendEvent fires at 3000 milliseconds, the second at 5000, the first SendEvent fires again at 7000 milliseconds, and so forth. {"type": "Sequential","delay": 1000,"repeatCount": 2,"commands": [{ "type": "SendEvent","delay": 2000},{"type": "SendEvent","delay": 2000}]}
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'Sequential';
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface SetPageCommand
interface SetPageCommand {}
Change the page displayed in a Pager component. The SetPage command finishes when the item is fully in view.
property 'componentId'
componentId: string;
The id of the Pager component.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'position'
position?: interfaces.alexa.presentation.aplt.Position;
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'SetPage';
property 'value'
value: number | string;
The distance to move. May be an absolute value or a relative value.
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface SetValueCommand
interface SetValueCommand {}
Change a dynamic property of a component without redrawing the screen.
property 'componentId'
componentId?: string;
The id of the component whose value to set.
property 'delay'
delay?: number;
The delay in milliseconds before this command starts executing; must be non-negative. Defaults to 0.
property 'description'
description?: string;
A user-provided description of this command.
property 'property'
property: string;
The name of the property to set.
property 'screenLock'
screenLock?: boolean;
If true, disable the Interaction Timer.
property 'type'
type: 'SetValue';
property 'value'
value: string;
The property value to set.
property 'when'
when?: boolean | string;
A conditional expression to be evaluated in device. If false, the execution of the command is skipped. Defaults to true.
interface UserEvent
interface UserEvent {}
property 'arguments'
arguments?: Array<any>;
The array of argument data to pass to Alexa.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'source'
source?: any;
Meta-information about what caused the event to be generated.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
A unique token for the active presentation.
property 'type'
type: 'Alexa.Presentation.APLT.UserEvent';
type Command
type Command = | interfaces.alexa.presentation.aplt.SetValueCommand | interfaces.alexa.presentation.aplt.IdleCommand | interfaces.alexa.presentation.aplt.AutoPageCommand | interfaces.alexa.presentation.aplt.ScrollCommand | interfaces.alexa.presentation.aplt.SendEventCommand | interfaces.alexa.presentation.aplt.ParallelCommand | interfaces.alexa.presentation.aplt.SetPageCommand | interfaces.alexa.presentation.aplt.SequentialCommand;
A message that can change the visual or audio presentation of the content on the screen.
type Position
type Position = 'absolute' | 'relative';
Whether the value is a relative or absolute offset. Defaults to absolute.
type TargetProfile
type TargetProfile = 'FOUR_CHARACTER_CLOCK' | 'NONE';
Name of a supported profile on character display.
namespace interfaces.alexa.presentation.html
namespace interfaces.alexa.presentation.html {}
interface AlexaPresentationHtmlInterface
interface AlexaPresentationHtmlInterface {}
property 'runtime'
runtime?: interfaces.alexa.presentation.html.Runtime;
interface Configuration
interface Configuration {}
property 'timeoutInSeconds'
timeoutInSeconds?: number;
The number of seconds the content can stay on the screen without user interaction. Default value is 30 seconds. Maximum allowed value is 5 minutes.
interface HandleMessageDirective
interface HandleMessageDirective {}
The HandleMessage directive sends a message to a skill's web application that runs on the device browser.
property 'message'
message: any;
A free-form object containing data to deliver to a skill's HTML application running the device. Maximum size 18 KB.
property 'transformers'
transformers?: Array<interfaces.alexa.presentation.html.Transformer>;
An array of objects for performing text-to-speech transformations with message data
property 'type'
type: 'Alexa.Presentation.HTML.HandleMessage';
interface MessageRequest
interface MessageRequest {}
The Message request sends a message to the skill lambda.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'message'
message: any;
A free-form object containing data from a skill's HTML application to deliver to the Alexa cloud. Maximum size 18 KB.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.Presentation.HTML.Message';
interface Runtime
interface Runtime {}
Contains the runtime information for the interface.
property 'maxVersion'
maxVersion: string;
The max version of the HTML runtime supported by the device.
interface RuntimeError
interface RuntimeError {}
interface RuntimeErrorRequest
interface RuntimeErrorRequest {}
The RuntimeError request occurs when the device software encounters an error with loading a skill's web application.
property 'error'
error: interfaces.alexa.presentation.html.RuntimeError;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Alexa.Presentation.HTML.RuntimeError';
interface StartDirective
interface StartDirective {}
The Start directive provides the data necessary to load an HTML page on the target device.
property 'configuration'
configuration: interfaces.alexa.presentation.html.Configuration;
property 'data'
data?: any;
Optional startup data which will be made available to the runtime for skill startup. Maximum size: 18 KB
property 'request'
request: interfaces.alexa.presentation.html.StartRequest;
property 'transformers'
transformers?: Array<interfaces.alexa.presentation.html.Transformer>;
An array of objects for performing text-to-speech transformations with message data
property 'type'
type: 'Alexa.Presentation.HTML.Start';
interface StartRequest
interface StartRequest {}
property 'headers'
headers?: any;
HTTP headers that the HTML runtime requires to access resources. Only the Authorization header and custom headers are allowed
property 'method'
method: interfaces.alexa.presentation.html.StartRequestMethod;
property 'uri'
uri?: string;
HTTPS URI of the HTML page to load. This URI must abide by the [URI RFC 3986](https://tools.ietf.org/html/rfc3986). The HTML runtime must perform secure requests, using the HTTPS schema. Maximum size 8000 characters
interface Transformer
interface Transformer {}
Properties for performing text to speech transformations. These are the same properties that [APL transformers](https://developer.amazon.com/docs/alexa-presentation-language/apl-data-source.html#transformer-properties-and-conversion-rules) use.
property 'inputPath'
inputPath: string;
A JSON path that points to either a single entity in the message object, or a set of entities using wildcard or unresolved arrays. Examples 'family[*].name', 'address.street'. See [APL transformer properties](https://developer.amazon.com/docs/alexa-presentation-language/apl-data-source.html#transformer-properties-and-conversion-rules) for more details.
property 'outputName'
outputName?: string;
Name of the output property to add to the message object. For example, if the inputPath is "address.street", the transformer output will be stored at "address.outputName". If no outputName is supplied, the transformer output will override the value at inputPath.
property 'transformer'
transformer: interfaces.alexa.presentation.html.TransformerType;
type RuntimeErrorReason
type RuntimeErrorReason = | 'HTTP_REQUEST_ERROR' | 'TIMED_OUT' | 'FILE_TYPE_NOT_SUPPORTED' | 'APPLICATION_ERROR';
type StartRequestMethod
type StartRequestMethod = 'GET';
type TransformerType
type TransformerType = 'ssmlToSpeech' | 'textToSpeech' | 'textToHint' | 'ssmlToText';
namespace interfaces.alexa.smartvision
namespace interfaces.alexa.smartvision {}
namespace interfaces.alexa.smartvision.snapshotprovider
namespace interfaces.alexa.smartvision.snapshotprovider {}
interface GetSnapshotDirective
interface GetSnapshotDirective {}
This directive is used to request latest snapshot from camera skill on a particular endpoint.
property 'preferOnDemandSnapshot'
preferOnDemandSnapshot?: boolean;
This property defines that an on-demand snapshot is preferred over a cached snapshot from camera skill.
property 'type'
type: 'Alexa.SmartVision.SnapshotProvider.GetSnapshotDirective';
namespace interfaces.amazonpay
namespace interfaces.amazonpay {}
namespace interfaces.amazonpay.model
namespace interfaces.amazonpay.model {}
namespace interfaces.amazonpay.model.request
namespace interfaces.amazonpay.model.request {}
interface AuthorizeAttributes
interface AuthorizeAttributes {}
This is an object to set the attributes specified in the AuthorizeAttributes table. See the “AuthorizationDetails” section of the Amazon Pay API reference guide for details about this object.
property '@type'
'@type': 'AuthorizeAttributes';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'authorizationAmount'
authorizationAmount: interfaces.amazonpay.model.request.Price;
property 'authorizationReferenceId'
authorizationReferenceId: string;
This is 3P seller's identifier for this authorization transaction. This identifier must be unique for all of your authorization transactions.
property 'sellerAuthorizationNote'
sellerAuthorizationNote?: string;
A description for the transaction that is included in emails to the user. Appears only when AuthorizeAndCapture is chosen.
property 'softDescriptor'
softDescriptor?: string;
The description to be shown on the user's payment instrument statement if AuthorizeAndCapture is chosen. Format of soft descriptor sent to the payment processor is "AMZ* <soft descriptor specified here>". Default is "AMZ*<SELLER_NAME> amzn.com/ pmts WA". Maximum length can be 16 characters.
property 'transactionTimeout'
transactionTimeout?: number;
The maximum number of minutes allocated for the Authorize operation call to be processed. After this the authorization is automatically declined and you cannot capture funds against the authorization. The default value for Alexa transactions is 0. In order to speed up checkout time for voice users we recommend to not change this value.
interface BillingAgreementAttributes
interface BillingAgreementAttributes {}
The merchant can choose to set the attributes specified in the BillingAgreementAttributes.
property '@type'
'@type': 'BillingAgreementAttributes';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'billingAgreementType'
billingAgreementType?: interfaces.amazonpay.model.request.BillingAgreementType;
property 'platformId'
platformId?: string;
Represents the SellerId of the Solution Provider that developed the eCommerce platform. This value is only used by Solution Providers, for whom it is required. It should not be provided by merchants creating their own custom integration. Do not specify the SellerId of the merchant for this request parameter. If you are a merchant, do not enter a PlatformId.
property 'sellerBillingAgreementAttributes'
sellerBillingAgreementAttributes?: interfaces.amazonpay.model.request.SellerBillingAgreementAttributes;
property 'sellerNote'
sellerNote?: string;
Represents a description of the billing agreement that is displayed in emails to the buyer.
property 'subscriptionAmount'
subscriptionAmount?: interfaces.amazonpay.model.request.Price;
interface Price
interface Price {}
This request object specifies amount and currency authorized/captured.
property '@type'
'@type': 'Price';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'amount'
amount: string;
Amount authorized/captured.
property 'currencyCode'
currencyCode: string;
Currency code for the amount.
interface ProviderAttributes
interface ProviderAttributes {}
This is required only for Ecommerce provider (Solution provider) use cases.
property '@type'
'@type': 'ProviderAttributes';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'providerCreditList'
providerCreditList: Array<interfaces.amazonpay.model.request.ProviderCredit>;
List of provider credit.
property 'providerId'
providerId: string;
Solution provider ID.
interface ProviderCredit
interface ProviderCredit {}
property '@type'
'@type': 'ProviderCredit';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'credit'
credit?: interfaces.amazonpay.model.request.Price;
property 'providerId'
providerId?: string;
This is required only for Ecommerce provider (Solution provider) use cases.
interface SellerBillingAgreementAttributes
interface SellerBillingAgreementAttributes {}
Provides more context about the billing agreement that is represented by this Billing Agreement object.
property '@type'
'@type': 'SellerBillingAgreementAttributes';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'customInformation'
customInformation?: string;
Any additional information that you wish to include with this billing agreement. At least one request parameter must be specified.
property 'sellerBillingAgreementId'
sellerBillingAgreementId?: string;
The merchant-specified identifier of this billing agreement. At least one request parameter must be specified. Amazon recommends that you use only the following characters:- lowercase a-z, uppercase A-Z, numbers 0-9, dash (-), underscore (_).
property 'storeName'
storeName?: string;
The identifier of the store from which the order was placed. This overrides the default value in Seller Central under Settings > Account Settings. It is displayed to the buyer in their emails and transaction history on the Amazon Payments website.
interface SellerOrderAttributes
interface SellerOrderAttributes {}
This object includes elements shown to buyers in emails and in their transaction history. See the “SellerOrderAttributes” section of the Amazon Pay API reference guide for details about this object.
property '@type'
'@type': 'SellerOrderAttributes';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'customInformation'
customInformation?: string;
Any additional information that you want to include with this order reference.
property 'sellerNote'
sellerNote?: string;
This represents a description of the order that is displayed in emails to the buyer.
property 'sellerOrderId'
sellerOrderId?: string;
The merchant-specified identifier of this order. This is shown to the buyer in their emails and transaction history on the Amazon Pay website.
property 'storeName'
storeName?: string;
The identifier of the store from which the order was placed. This overrides the default value in Seller Central under Settings > Account Settings. It is displayed to the buyer in their emails and transaction history on the Amazon Payments website.
type BaseAmazonPayEntity
type BaseAmazonPayEntity = | interfaces.amazonpay.model.request.SellerBillingAgreementAttributes | interfaces.amazonpay.model.request.Price | interfaces.amazonpay.request.ChargeAmazonPayRequest | interfaces.amazonpay.model.request.BillingAgreementAttributes | interfaces.amazonpay.model.request.SellerOrderAttributes | interfaces.amazonpay.model.request.ProviderAttributes | interfaces.amazonpay.model.request.AuthorizeAttributes | interfaces.amazonpay.request.SetupAmazonPayRequest | interfaces.amazonpay.model.request.ProviderCredit;
type BillingAgreementType
type BillingAgreementType = | 'CustomerInitiatedTransaction' | 'MerchantInitiatedTransaction';
* This is used to specify applicable billing agreement type. * CustomerInitiatedTransaction – customer is present at the time of processing payment for the order. * MerchantInitiatedTransaction – customer is not present at the time of processing payment for the order.
type PaymentAction
type PaymentAction = 'Authorize' | 'AuthorizeAndCapture';
* This is used to specify applicable payment action. * Authorize – you want to confirm the order and authorize a certain amount, but you do not want to capture at this time. * AuthorizeAndCapture – you want to confirm the order, authorize for the given amount, and capture the funds.
namespace interfaces.amazonpay.model.response
namespace interfaces.amazonpay.model.response {}
interface AuthorizationDetails
interface AuthorizationDetails {}
This object encapsulates details about an Authorization object including the status, amount captured and fee charged.
property 'amazonAuthorizationId'
amazonAuthorizationId?: string;
This is AmazonPay generated identifier for this authorization transaction.
property 'authorizationAmount'
authorizationAmount?: interfaces.amazonpay.model.response.Price;
property 'authorizationBillingAddress'
authorizationBillingAddress?: interfaces.amazonpay.model.response.Destination;
property 'authorizationFee'
authorizationFee?: interfaces.amazonpay.model.response.Price;
property 'authorizationReferenceId'
authorizationReferenceId?: string;
This is 3P seller's identifier for this authorization transaction. This identifier must be unique for all of your authorization transactions.
property 'authorizationStatus'
authorizationStatus?: interfaces.amazonpay.model.response.AuthorizationStatus;
property 'capturedAmount'
capturedAmount?: interfaces.amazonpay.model.response.Price;
property 'captureNow'
captureNow?: boolean;
This indicates whether a direct capture against the payment contract was specified.
property 'creationTimestamp'
creationTimestamp?: string;
This is the time at which the authorization was created.
property 'expirationTimestamp'
expirationTimestamp?: string;
This is the time at which the authorization expires.
property 'idList'
idList?: Array<string>;
list of AmazonCaptureId identifiers that have been requested on this Authorization object.
property 'sellerAuthorizationNote'
sellerAuthorizationNote?: string;
A description for the transaction that is included in emails to the user. Appears only when AuthorizeAndCapture is chosen.
property 'softDecline'
softDecline?: boolean;
This indicates whether an authorization resulted in a soft decline.
property 'softDescriptor'
softDescriptor?: string;
This is the description to be shown on the buyer's payment instrument statement if AuthorizeAndCapture was chosen.
interface AuthorizationStatus
interface AuthorizationStatus {}
Indicates the current status of an Authorization object, a Capture object, or a Refund object.
property 'lastUpdateTimestamp'
lastUpdateTimestamp?: string;
A timestamp that indicates the time when the authorization, capture, or refund state was last updated. In ISO 8601 format
property 'reasonCode'
reasonCode?: string;
The reason that the Authorization object, Capture object, or Refund object is in the current state. For more information, see - https://pay.amazon.com/us/developer/documentation/apireference/201752950
property 'reasonDescription'
reasonDescription?: string;
Reason desciption corresponding to the reason code
property 'state'
state?: interfaces.amazonpay.model.response.State;
interface BillingAgreementDetails
interface BillingAgreementDetails {}
The result attributes from successful SetupAmazonPay call.
property 'billingAddress'
billingAddress?: interfaces.amazonpay.model.response.Destination;
The Billing Address of the payment instrument associated with Billing Agreement.
property 'billingAgreementId'
billingAgreementId: string;
Billing agreement id which can be used for one time and recurring purchases
property 'billingAgreementStatus'
billingAgreementStatus: interfaces.amazonpay.model.v1.BillingAgreementStatus;
property 'checkoutLanguage'
checkoutLanguage?: string;
Merchant's preferred language of checkout.
property 'creationTimestamp'
creationTimestamp?: string;
Time at which billing agreement details created.
property 'destination'
destination?: interfaces.amazonpay.model.v1.Destination;
The default shipping address of the buyer. Returned if needAmazonShippingAddress is set to true.
property 'releaseEnvironment'
releaseEnvironment: interfaces.amazonpay.model.response.ReleaseEnvironment;
interface Destination
interface Destination {}
property 'addressLine1'
addressLine1?: string;
The first line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'addressLine2'
addressLine2?: string;
The second line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'addressLine3'
addressLine3?: string;
The third line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'city'
city?: string;
The city
property 'companyName'
companyName?: string;
The company name
property 'countryCode'
countryCode?: string;
The country code, in ISO 3166 format
property 'districtOrCounty'
districtOrCounty?: string;
The district or County
property 'name'
name?: string;
The name or business name
property 'phone'
phone?: string;
The phone number
property 'postalCode'
postalCode?: string;
The postal code.
property 'stateOrRegion'
stateOrRegion?: string;
The state or region. This element is free text and can be either a 2-character code, fully spelled out, or abbreviated. Required. Note :- This response element is returned only in the U.S.
interface Price
interface Price {}
This response object specifies amount and currency authorized/captured.
property 'amount'
amount: string;
Amount authorized/captured.
property 'currencyCode'
currencyCode: string;
Currency code for the amount.
type ReleaseEnvironment
type ReleaseEnvironment = 'LIVE' | 'SANDBOX';
Indicates if the contract is for a Live (Production) or Sandbox environment.
type State
type State = 'Pending' | 'Open' | 'Declined' | 'Closed';
Indicates the state that the Authorization object is in. For more information see “Authorization states and reason codes” under “States and reason codes” section in Amazon Pay API Reference Guide.
namespace interfaces.amazonpay.model.v1
namespace interfaces.amazonpay.model.v1 {}
interface AuthorizationDetails
interface AuthorizationDetails {}
This object encapsulates details about an Authorization object including the status, amount captured and fee charged.
property 'amazonAuthorizationId'
amazonAuthorizationId?: string;
This is AmazonPay generated identifier for this authorization transaction.
property 'authorizationAmount'
authorizationAmount?: interfaces.amazonpay.model.v1.Price;
property 'authorizationFee'
authorizationFee?: interfaces.amazonpay.model.v1.Price;
property 'authorizationReferenceId'
authorizationReferenceId?: string;
This is 3P seller's identifier for this authorization transaction. This identifier must be unique for all of your authorization transactions.
property 'authorizationStatus'
authorizationStatus?: interfaces.amazonpay.model.v1.AuthorizationStatus;
property 'capturedAmount'
capturedAmount?: interfaces.amazonpay.model.v1.Price;
property 'captureNow'
captureNow?: boolean;
This indicates whether a direct capture against the payment contract was specified.
property 'creationTimestamp'
creationTimestamp?: string;
This is the time at which the authorization was created.
property 'expirationTimestamp'
expirationTimestamp?: string;
This is the time at which the authorization expires.
property 'idList'
idList?: Array<string>;
list of AmazonCaptureId identifiers that have been requested on this Authorization object.
property 'sellerAuthorizationNote'
sellerAuthorizationNote?: string;
A description for the transaction that is included in emails to the user. Appears only when AuthorizeAndCapture is chosen.
property 'softDecline'
softDecline?: boolean;
This indicates whether an authorization resulted in a soft decline.
property 'softDescriptor'
softDescriptor?: string;
This is the description to be shown on the buyer's payment instrument statement if AuthorizeAndCapture was chosen.
interface AuthorizationStatus
interface AuthorizationStatus {}
Indicates the current status of an Authorization object, a Capture object, or a Refund object.
property 'lastUpdateTimestamp'
lastUpdateTimestamp?: string;
A timestamp that indicates the time when the authorization, capture, or refund state was last updated. In ISO 8601 format
property 'reasonCode'
reasonCode?: string;
The reason that the Authorization object, Capture object, or Refund object is in the current state. For more information, see - https://pay.amazon.com/us/developer/documentation/apireference/201752950
property 'reasonDescription'
reasonDescription?: string;
Reason desciption corresponding to the reason code
property 'state'
state?: interfaces.amazonpay.model.v1.State;
interface AuthorizeAttributes
interface AuthorizeAttributes {}
This is an object to set the attributes specified in the AuthorizeAttributes table. See the “AuthorizationDetails” section of the Amazon Pay API reference guide for details about this object.
property 'authorizationAmount'
authorizationAmount: interfaces.amazonpay.model.v1.Price;
property 'authorizationReferenceId'
authorizationReferenceId: string;
This is 3P seller's identifier for this authorization transaction. This identifier must be unique for all of your authorization transactions.
property 'sellerAuthorizationNote'
sellerAuthorizationNote?: string;
A description for the transaction that is included in emails to the user. Appears only when AuthorizeAndCapture is chosen.
property 'softDescriptor'
softDescriptor?: string;
The description to be shown on the user's payment instrument statement if AuthorizeAndCapture is chosen. Format of soft descriptor sent to the payment processor is "AMZ* <soft descriptor specified here>". Default is "AMZ*<SELLER_NAME> amzn.com/ pmts WA". Maximum length can be 16 characters.
property 'transactionTimeout'
transactionTimeout?: number;
The maximum number of minutes allocated for the Authorize operation call to be processed. After this the authorization is automatically declined and you cannot capture funds against the authorization. The default value for Alexa transactions is 0. In order to speed up checkout time for voice users we recommend to not change this value.
interface BillingAgreementAttributes
interface BillingAgreementAttributes {}
The merchant can choose to set the attributes specified in the BillingAgreementAttributes.
property 'billingAgreementType'
billingAgreementType?: interfaces.amazonpay.model.v1.BillingAgreementType;
property 'platformId'
platformId?: string;
Represents the SellerId of the Solution Provider that developed the eCommerce platform. This value is only used by Solution Providers, for whom it is required. It should not be provided by merchants creating their own custom integration. Do not specify the SellerId of the merchant for this request parameter. If you are a merchant, do not enter a PlatformId.
property 'sellerBillingAgreementAttributes'
sellerBillingAgreementAttributes?: interfaces.amazonpay.model.v1.SellerBillingAgreementAttributes;
property 'sellerNote'
sellerNote?: string;
Represents a description of the billing agreement that is displayed in emails to the buyer.
property 'subscriptionAmount'
subscriptionAmount?: interfaces.amazonpay.model.v1.Price;
interface BillingAgreementDetails
interface BillingAgreementDetails {}
The result attributes from successful SetupAmazonPay call.
property 'billingAgreementId'
billingAgreementId: string;
Billing agreement id which can be used for one time and recurring purchases
property 'billingAgreementStatus'
billingAgreementStatus: interfaces.amazonpay.model.v1.BillingAgreementStatus;
property 'checkoutLanguage'
checkoutLanguage?: string;
Merchant's preferred language of checkout.
property 'creationTimestamp'
creationTimestamp?: string;
Time at which billing agreement details created.
property 'destination'
destination?: interfaces.amazonpay.model.v1.Destination;
The default shipping address of the buyer. Returned if needAmazonShippingAddress is set to true.
property 'releaseEnvironment'
releaseEnvironment: interfaces.amazonpay.model.v1.ReleaseEnvironment;
interface Destination
interface Destination {}
Destination object containing the details of an Address.
property 'addressLine1'
addressLine1?: string;
The first line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'addressLine2'
addressLine2?: string;
The second line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'addressLine3'
addressLine3?: string;
The third line of the address. At least one AddressLine (AddressLine1, AddressLine2, or AddressLine3) is required.
property 'city'
city?: string;
The city
property 'companyName'
companyName?: string;
The company name
property 'countryCode'
countryCode?: string;
The country code, in ISO 3166 format
property 'districtOrCounty'
districtOrCounty?: string;
The district or County
property 'name'
name?: string;
The name or business name
property 'phone'
phone?: string;
The phone number
property 'postalCode'
postalCode?: string;
The postal code.
property 'stateOrRegion'
stateOrRegion?: string;
The state or region. This element is free text and can be either a 2-character code, fully spelled out, or abbreviated. Required. Note :- This response element is returned only in the U.S.
interface Price
interface Price {}
This object specifies amount and currency authorized/captured.
property 'amount'
amount: string;
Amount authorized/captured.
property 'currencyCode'
currencyCode: string;
Currency code for the amount.
interface ProviderAttributes
interface ProviderAttributes {}
This is required only for Ecommerce provider (Solution provider) use cases.
property 'providerCreditList'
providerCreditList: Array<interfaces.amazonpay.model.v1.ProviderCredit>;
List of provider credit.
property 'providerId'
providerId: string;
Solution provider ID.
interface ProviderCredit
interface ProviderCredit {}
property 'credit'
credit?: interfaces.amazonpay.model.v1.Price;
property 'providerId'
providerId?: string;
This is required only for Ecommerce provider (Solution provider) use cases.
interface SellerBillingAgreementAttributes
interface SellerBillingAgreementAttributes {}
Provides more context about the billing agreement that is represented by this Billing Agreement object.
property 'customInformation'
customInformation?: string;
Any additional information that you wish to include with this billing agreement. At least one request parameter must be specified.
property 'sellerBillingAgreementId'
sellerBillingAgreementId?: string;
The merchant-specified identifier of this billing agreement. At least one request parameter must be specified. Amazon recommends that you use only the following characters:- lowercase a-z, uppercase A-Z, numbers 0-9, dash (-), underscore (_).
property 'storeName'
storeName?: string;
The identifier of the store from which the order was placed. This overrides the default value in Seller Central under Settings > Account Settings. It is displayed to the buyer in their emails and transaction history on the Amazon Payments website.
interface SellerOrderAttributes
interface SellerOrderAttributes {}
This object includes elements shown to buyers in emails and in their transaction history. See the “SellerOrderAttributes” section of the Amazon Pay API reference guide for details about this object.
property 'customInformation'
customInformation?: string;
Any additional information that you want to include with this order reference.
property 'sellerNote'
sellerNote?: string;
This represents a description of the order that is displayed in emails to the buyer.
property 'sellerOrderId'
sellerOrderId?: string;
The merchant-specified identifier of this order. This is shown to the buyer in their emails and transaction history on the Amazon Pay website.
property 'storeName'
storeName?: string;
The identifier of the store from which the order was placed. This overrides the default value in Seller Central under Settings > Account Settings. It is displayed to the buyer in their emails and transaction history on the Amazon Payments website.
type BillingAgreementStatus
type BillingAgreementStatus = 'CANCELED' | 'CLOSED' | 'DRAFT' | 'OPEN' | 'SUSPENDED';
Indicates the current status of the billing agreement. For more information about the State and ReasonCode response elements, see Billing agreement states and reason codes - https://pay.amazon.com/us/developer/documentation/apireference/201752870
type BillingAgreementType
type BillingAgreementType = | 'CustomerInitiatedTransaction' | 'MerchantInitiatedTransaction';
* This is used to specify applicable billing agreement type. * CustomerInitiatedTransaction – customer is present at the time of processing payment for the order. * MerchantInitiatedTransaction – customer is not present at the time of processing payment for the order.
type PaymentAction
type PaymentAction = 'Authorize' | 'AuthorizeAndCapture';
* This is used to specify applicable payment action. * Authorize – you want to confirm the order and authorize a certain amount, but you do not want to capture at this time. * AuthorizeAndCapture – you want to confirm the order, authorize for the given amount, and capture the funds.
type ReleaseEnvironment
type ReleaseEnvironment = 'LIVE' | 'SANDBOX';
Indicates if the order is for a Live (Production) or Sandbox environment.
type State
type State = 'Pending' | 'Open' | 'Declined' | 'Closed' | 'Completed';
Indicates the state that the Authorization object, Capture object, or Refund object is in. For more information see - https://pay.amazon.com/us/developer/documentation/apireference/201752950
namespace interfaces.amazonpay.request
namespace interfaces.amazonpay.request {}
interface ChargeAmazonPayRequest
interface ChargeAmazonPayRequest {}
Charge Amazon Pay Request Object.
property '@type'
'@type': 'ChargeAmazonPayRequest';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'authorizeAttributes'
authorizeAttributes: interfaces.amazonpay.model.request.AuthorizeAttributes;
property 'billingAgreementId'
billingAgreementId: string;
The payment contract i.e. billing agreement created for the user.
property 'paymentAction'
paymentAction: interfaces.amazonpay.model.request.PaymentAction;
property 'providerAttributes'
providerAttributes?: interfaces.amazonpay.model.request.ProviderAttributes;
property 'sellerId'
sellerId: string;
The seller ID (also known as merchant ID). If you are an Ecommerce Provider (Solution Provider), please specify the ID of the merchant, not your provider ID.
property 'sellerOrderAttributes'
sellerOrderAttributes?: interfaces.amazonpay.model.request.SellerOrderAttributes;
interface SetupAmazonPayRequest
interface SetupAmazonPayRequest {}
Setup Amazon Pay Request Object.
property '@type'
'@type': 'SetupAmazonPayRequest';
property '@version'
'@version': string;
Version of the Amazon Pay Entity. Can be 1 or greater.
property 'billingAgreementAttributes'
billingAgreementAttributes?: interfaces.amazonpay.model.request.BillingAgreementAttributes;
property 'checkoutLanguage'
checkoutLanguage?: string;
The merchant's preferred language for checkout.
property 'countryOfEstablishment'
countryOfEstablishment: string;
The country in which the merchant has registered, as an Amazon Payments legal entity.
property 'ledgerCurrency'
ledgerCurrency: string;
The currency of the merchant’s ledger account.
property 'needAmazonShippingAddress'
needAmazonShippingAddress?: boolean;
To receive the default user shipping address in the response, set this parameter to true. Not required if a user shipping address is not required.
property 'sandboxCustomerEmailId'
sandboxCustomerEmailId?: string;
Use this parameter to create a Sandbox payment object. In order to use this parameter, you first create a Sandbox user account in Seller Central. Then, pass the email address associated with that Sandbox user account.
property 'sandboxMode'
sandboxMode?: boolean;
To test in Sandbox mode, set this parameter to true.
property 'sellerId'
sellerId: string;
The seller ID (also known as merchant ID). If you are an Ecommerce Provider (Solution Provider), please specify the ID of the merchant, not your provider ID.
namespace interfaces.amazonpay.response
namespace interfaces.amazonpay.response {}
interface AmazonPayErrorResponse
interface AmazonPayErrorResponse {}
Error response for SetupAmazonPay and ChargeAmazonPay calls.
property 'errorCode'
errorCode: string;
Error code indicating the succinct cause of error
property 'errorMessage'
errorMessage: string;
Description of the error.
interface ChargeAmazonPayResult
interface ChargeAmazonPayResult {}
Charge Amazon Pay Result Object. It is sent as part of the response to ChargeAmazonPayRequest.
property 'amazonOrderReferenceId'
amazonOrderReferenceId: string;
The order reference identifier.
property 'authorizationDetails'
authorizationDetails: interfaces.amazonpay.model.response.AuthorizationDetails;
interface SetupAmazonPayResult
interface SetupAmazonPayResult {}
Setup Amazon Pay Result Object. It is sent as part of the response to SetupAmazonPayRequest.
property 'billingAgreementDetails'
billingAgreementDetails: interfaces.amazonpay.model.response.BillingAgreementDetails;
namespace interfaces.amazonpay.v1
namespace interfaces.amazonpay.v1 {}
interface AmazonPayErrorResponse
interface AmazonPayErrorResponse {}
Error response for SetupAmazonPay and ChargeAmazonPay calls.
property 'errorCode'
errorCode: string;
Error code indicating the succinct cause of error
property 'errorMessage'
errorMessage: string;
Description of the error.
interface ChargeAmazonPay
interface ChargeAmazonPay {}
Charge Amazon Pay Request Object
property 'authorizeAttributes'
authorizeAttributes: interfaces.amazonpay.model.v1.AuthorizeAttributes;
property 'billingAgreementId'
billingAgreementId: string;
The payment contract i.e. billing agreement created for the user.
property 'consentToken'
consentToken?: string;
Authorization token that contains the permissions consented to by the user.
property 'paymentAction'
paymentAction: interfaces.amazonpay.model.v1.PaymentAction;
property 'providerAttributes'
providerAttributes?: interfaces.amazonpay.model.v1.ProviderAttributes;
property 'sellerId'
sellerId: string;
The seller ID (also known as merchant ID). If you are an Ecommerce Provider (Solution Provider), please specify the ID of the merchant, not your provider ID.
property 'sellerOrderAttributes'
sellerOrderAttributes?: interfaces.amazonpay.model.v1.SellerOrderAttributes;
interface ChargeAmazonPayResult
interface ChargeAmazonPayResult {}
Charge Amazon Pay Result Object. It is sent as part of the reponse to ChargeAmazonPay request.
property 'amazonOrderReferenceId'
amazonOrderReferenceId: string;
The order reference identifier.
property 'authorizationDetails'
authorizationDetails: interfaces.amazonpay.model.v1.AuthorizationDetails;
interface SetupAmazonPay
interface SetupAmazonPay {}
Setup Amazon Pay Request Object
property 'billingAgreementAttributes'
billingAgreementAttributes?: interfaces.amazonpay.model.v1.BillingAgreementAttributes;
property 'checkoutLanguage'
checkoutLanguage?: string;
The merchant's preferred language for checkout.
property 'consentToken'
consentToken?: string;
Authorization token that contains the permissions consented to by the user.
property 'countryOfEstablishment'
countryOfEstablishment: string;
The country in which the merchant has registered, as an Amazon Payments legal entity.
property 'ledgerCurrency'
ledgerCurrency: string;
The currency of the merchant’s ledger account.
property 'needAmazonShippingAddress'
needAmazonShippingAddress?: boolean;
To receive the default user shipping address in the response, set this parameter to true. Not required if a user shipping address is not required.
property 'sandboxCustomerEmailId'
sandboxCustomerEmailId?: string;
Use this parameter to create a Sandbox payment object. In order to use this parameter, you first create a Sandbox user account in Seller Central. Then, pass the email address associated with that Sandbox user account.
property 'sandboxMode'
sandboxMode?: boolean;
To test in Sandbox mode, set this parameter to true.
property 'sellerId'
sellerId: string;
The seller ID (also known as merchant ID). If you are an Ecommerce Provider (Solution Provider), please specify the ID of the merchant, not your provider ID.
interface SetupAmazonPayResult
interface SetupAmazonPayResult {}
Setup Amazon Pay Result Object. It is sent as part of the reponse to SetupAmazonPay request.
property 'billingAgreementDetails'
billingAgreementDetails: interfaces.amazonpay.model.v1.BillingAgreementDetails;
namespace interfaces.applink
namespace interfaces.applink {}
interface AppLinkInterface
interface AppLinkInterface {}
property 'version'
version?: string;
interface AppLinkState
interface AppLinkState {}
property 'directLaunch'
directLaunch?: interfaces.applink.DirectLaunch;
property 'sendToDevice'
sendToDevice?: interfaces.applink.SendToDevice;
property 'supportedCatalogTypes'
supportedCatalogTypes?: Array<interfaces.applink.CatalogTypes>;
interface DirectLaunch
interface DirectLaunch {}
direct launch availability
property 'GOOGLE_PLAY_STORE'
GOOGLE_PLAY_STORE?: any;
property 'IOS_APP_STORE'
IOS_APP_STORE?: any;
interface SendToDevice
interface SendToDevice {}
send to device availability
type CatalogTypes
type CatalogTypes = 'IOS_APP_STORE' | 'GOOGLE_PLAY_STORE';
Accepted catalog types.
namespace interfaces.audioplayer
namespace interfaces.audioplayer {}
interface AudioItem
interface AudioItem {}
property 'metadata'
metadata?: interfaces.audioplayer.AudioItemMetadata;
property 'stream'
stream?: interfaces.audioplayer.Stream;
interface AudioItemMetadata
interface AudioItemMetadata {}
Encapsulates the metadata about an AudioItem.
property 'art'
art?: interfaces.display.Image;
An optional cover art image for the audio item.
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
An optional background image for the audio item.
property 'subtitle'
subtitle?: string;
An optional subtitle of the audio item.
property 'title'
title?: string;
An optional title of the audio item.
interface AudioPlayerInterface
interface AudioPlayerInterface {}
interface AudioPlayerState
interface AudioPlayerState {}
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'playerActivity'
playerActivity?: interfaces.audioplayer.PlayerActivity;
property 'token'
token?: string;
interface CaptionData
interface CaptionData {}
interface ClearQueueDirective
interface ClearQueueDirective {}
property 'clearBehavior'
clearBehavior?: interfaces.audioplayer.ClearBehavior;
property 'type'
type: 'AudioPlayer.ClearQueue';
interface CurrentPlaybackState
interface CurrentPlaybackState {}
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'playerActivity'
playerActivity?: interfaces.audioplayer.PlayerActivity;
property 'token'
token?: string;
interface Error
interface Error {}
interface PlaybackFailedRequest
interface PlaybackFailedRequest {}
property 'currentPlaybackState'
currentPlaybackState?: interfaces.audioplayer.CurrentPlaybackState;
property 'error'
error?: interfaces.audioplayer.Error;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
property 'type'
type: 'AudioPlayer.PlaybackFailed';
interface PlaybackFinishedRequest
interface PlaybackFinishedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
property 'type'
type: 'AudioPlayer.PlaybackFinished';
interface PlaybackNearlyFinishedRequest
interface PlaybackNearlyFinishedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
property 'type'
type: 'AudioPlayer.PlaybackNearlyFinished';
interface PlaybackStartedRequest
interface PlaybackStartedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
property 'type'
type: 'AudioPlayer.PlaybackStarted';
interface PlaybackStoppedRequest
interface PlaybackStoppedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'offsetInMilliseconds'
offsetInMilliseconds?: number;
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
property 'type'
type: 'AudioPlayer.PlaybackStopped';
interface PlayDirective
interface PlayDirective {}
property 'audioItem'
audioItem?: interfaces.audioplayer.AudioItem;
property 'playBehavior'
playBehavior?: interfaces.audioplayer.PlayBehavior;
property 'type'
type: 'AudioPlayer.Play';
interface StopDirective
interface StopDirective {}
property 'type'
type: 'AudioPlayer.Stop';
interface Stream
interface Stream {}
property 'captionData'
captionData?: interfaces.audioplayer.CaptionData;
property 'expectedPreviousToken'
expectedPreviousToken?: string;
property 'offsetInMilliseconds'
offsetInMilliseconds: number;
property 'token'
token: string;
property 'url'
url: string;
type CaptionType
type CaptionType = 'WEBVTT';
type ClearBehavior
type ClearBehavior = 'CLEAR_ALL' | 'CLEAR_ENQUEUED';
type ErrorType
type ErrorType = | 'MEDIA_ERROR_INTERNAL_DEVICE_ERROR' | 'MEDIA_ERROR_INTERNAL_SERVER_ERROR' | 'MEDIA_ERROR_INVALID_REQUEST' | 'MEDIA_ERROR_SERVICE_UNAVAILABLE' | 'MEDIA_ERROR_UNKNOWN';
type PlayBehavior
type PlayBehavior = 'ENQUEUE' | 'REPLACE_ALL' | 'REPLACE_ENQUEUED';
type PlayerActivity
type PlayerActivity = | 'PLAYING' | 'PAUSED' | 'FINISHED' | 'BUFFER_UNDERRUN' | 'IDLE' | 'STOPPED';
namespace interfaces.automotive
namespace interfaces.automotive {}
interface AutomotiveState
interface AutomotiveState {}
This object contains the automotive specific information of the device
namespace interfaces.connections
namespace interfaces.connections {}
interface ConnectionsRequest
interface ConnectionsRequest {}
This is the request object that a skill will receive as a result of Connections.SendRequest directive from sender skill.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'name'
name?: string;
Name of the action sent by the referrer skill.
property 'payload'
payload?: { [key: string]: any;};
This is an object sent between the two skills for processing a ConnectionsRequest or ConnectionsResponse. This will always be a valid payload based on Action schema for the requester action.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Connections.Request';
interface ConnectionsResponse
interface ConnectionsResponse {}
This is the request object that a skill will receive as a result of Connections.SendResponse directive from referrer skill.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'name'
name?: string;
Name of the action for which response is received.
property 'payload'
payload?: { [key: string]: any;};
This is an object sent from referrer skill as is.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'status'
status?: interfaces.connections.ConnectionsStatus;
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
This is the token that the skill originally sent with the ConnectionsSendRequest directive.
property 'type'
type: 'Connections.Response';
interface ConnectionsStatus
interface ConnectionsStatus {}
Connection Status indicates a high level understanding of the result of ConnectionsRequest.
interface SendRequestDirective
interface SendRequestDirective {}
This is the directive that a skill can send as part of their response to a session based request to execute a predefined Connections. This will also return a result to the referring skill. (No Guarantee response will be returned)
property 'name'
name: string;
This defines the name of the Connection skill is trying to execute. It must be a valid and supported Connection name.
property 'payload'
payload?: { [key: string]: any;};
This is an object sent between the two skills for processing a ConnectionsRequest or ConnectionsResponse. The contract for the object is based on the schema of the Action used in the SendRequestDirective. Invalid payloads will result in errors sent back to the referrer.
property 'token'
token: string;
This is an echo back string that skills send when during Connections.SendRequest directive. They will receive it when they get the ConnectionsResponse. It is never sent to the skill handling the request.
property 'type'
type: 'Connections.SendRequest';
interface SendResponseDirective
interface SendResponseDirective {}
This is the directive that a skill can send as part of their response to a session based request to return a response to ConnectionsRequest.
type OnCompletion
type OnCompletion = 'RESUME_SESSION' | 'SEND_ERRORS_ONLY';
This defines the callback mechanism when the task is completed, i.e., whether the requester wants to be resumed after the task is fulfilled or just be notified about errors without being resumed.
namespace interfaces.connections.entities
namespace interfaces.connections.entities {}
interface PostalAddress
interface PostalAddress {}
Postal Address
property '@type'
'@type': 'PostalAddress';
property '@version'
'@version': string;
version of the request
property 'country'
country?: string;
country
property 'locality'
locality?: string;
locality/city
property 'postalCode'
postalCode?: string;
postal/zip code
property 'region'
region?: string;
state/region
property 'streetAddress'
streetAddress?: string;
street address
interface Restaurant
interface Restaurant {}
Restaurant entity
property '@type'
'@type': 'Restaurant';
property '@version'
'@version': string;
version of the request
property 'location'
location: interfaces.connections.entities.PostalAddress;
location
property 'name'
name: string;
name of the restaurant
type BaseEntity
type BaseEntity = | interfaces.connections.entities.PostalAddress | interfaces.connections.entities.Restaurant;
namespace interfaces.connections.requests
namespace interfaces.connections.requests {}
interface PrintImageRequest
interface PrintImageRequest {}
Payload Request object for PrintImage
property '@type'
'@type': 'PrintImageRequest';
property '@version'
'@version': string;
version of the request
property 'description'
description?: string;
description of the image
property 'imageType'
imageType: string;
type of the image
property 'title'
title: string;
title of the image
property 'url'
url: string;
url of the image
interface PrintPDFRequest
interface PrintPDFRequest {}
Payload Request object for PrintPDF
property '@type'
'@type': 'PrintPDFRequest';
property '@version'
'@version': string;
version of the request
property 'description'
description?: string;
description of the image
property 'title'
title: string;
title of the image
property 'url'
url: string;
url of the image
interface PrintWebPageRequest
interface PrintWebPageRequest {}
Payload Request object for PrintWebPage
property '@type'
'@type': 'PrintWebPageRequest';
property '@version'
'@version': string;
version of the request
property 'description'
description?: string;
description of the image
property 'title'
title: string;
title of the image
property 'url'
url: string;
url of the image
interface ScheduleFoodEstablishmentReservationRequest
interface ScheduleFoodEstablishmentReservationRequest {}
ScheduleFoodEstablishmentReservationRequest for booking restaurant reservation
property '@type'
'@type': 'ScheduleFoodEstablishmentReservationRequest';
property '@version'
'@version': string;
version of the request
property 'partySize'
partySize?: string;
party size
property 'restaurant'
restaurant: interfaces.connections.entities.Restaurant;
restaurant
property 'startTime'
startTime?: string;
start time of the reservation
interface ScheduleTaxiReservationRequest
interface ScheduleTaxiReservationRequest {}
ScheduleTaxiReservationRequest for booking taxi reservation
property '@type'
'@type': 'ScheduleTaxiReservationRequest';
property '@version'
'@version': string;
version of the request
property 'dropOffLocation'
dropOffLocation?: interfaces.connections.entities.PostalAddress;
drop off location
property 'partySize'
partySize?: string;
party size
property 'pickupLocation'
pickupLocation?: interfaces.connections.entities.PostalAddress;
pick up location
property 'pickupTime'
pickupTime?: string;
pickup time
type BaseRequest
type BaseRequest = | interfaces.connections.requests.ScheduleFoodEstablishmentReservationRequest | interfaces.connections.requests.PrintImageRequest | interfaces.connections.requests.PrintWebPageRequest | interfaces.connections.requests.PrintPDFRequest | interfaces.connections.requests.ScheduleTaxiReservationRequest;
namespace interfaces.connections.V1
namespace interfaces.connections.V1 {}
interface StartConnectionDirective
interface StartConnectionDirective {}
This is the directive that a skill can send as part of their response to a session based request to start a connection. A response will be returned to the skill when the connection is handled.
property 'input'
input?: { [key: string]: any;};
This is the input to the connection that the requester is trying to send. It is predefined by the handler of the connection. If the input format is incorrect, an error will be sent to to the requester.
property 'onCompletion'
onCompletion?: interfaces.connections.OnCompletion;
property 'token'
token?: string;
This is an echo back string that requester will receive it when it gets resumed. It is never sent to the handler of the connection.
property 'type'
type: 'Connections.StartConnection';
property 'uri'
uri: string;
This defines the name and version of connection that the requester is trying to send. The format of the uri should follow this pattern: connection://connectionName/connectionVersion. Invalid uri will cause an error which will be sent back to the requester.
namespace interfaces.conversations
namespace interfaces.conversations {}
interface APIInvocationRequest
interface APIInvocationRequest {}
property 'apiRequest'
apiRequest?: interfaces.conversations.APIRequest;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Dialog.API.Invoked';
interface APIRequest
interface APIRequest {}
API request object
property 'arguments'
arguments?: { [key: string]: any;};
Object containing values for API arguments
property 'name'
name?: string;
API name
property 'slots'
slots?: { [key: string]: SlotValue;};
interface ResetContextDirective
interface ResetContextDirective {}
property 'type'
type: 'Conversations.ResetContext';
namespace interfaces.customInterfaceController
namespace interfaces.customInterfaceController {}
interface Endpoint
interface Endpoint {}
The endpoint of a gadget.
property 'endpointId'
endpointId: string;
The endpoint ID of the gadget.
interface Event
interface Event {}
An Event object defining a single event sent by an endpoint
property 'endpoint'
endpoint?: interfaces.customInterfaceController.Endpoint;
Identifies where the event orginated from.
property 'header'
header: interfaces.customInterfaceController.Header;
The object that contains the header of the event.
property 'payload'
payload: any;
The free form JSON object.
interface EventFilter
interface EventFilter {}
Defines the Jsonlogic event filter expression and its corresponding match action. This filter is applied to all events during the event handler's duration. Events that are rejected by the filter expression are not sent to the skill.
property 'filterExpression'
filterExpression: any;
The JSON object that represents the Jsonlogic expression against which the events are evaluated. If this expression is satisfied, the corresponding match action is performed.
property 'filterMatchAction'
filterMatchAction: interfaces.customInterfaceController.FilterMatchAction;
interface EventsReceivedRequest
interface EventsReceivedRequest {}
Skill receives this type of event when an event meets the filter conditions provided in the StartEventHandlerDirective.
property 'events'
events?: Array<interfaces.customInterfaceController.Event>;
A list of events that meet the filter criteria.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
Unique identifier associated with the Event Handler that dispatched this event.
property 'type'
type: 'CustomInterfaceController.EventsReceived';
interface Expiration
interface Expiration {}
This object defines the duration of the Event Handler and the optional JSON payload that is delivered to the skill when the timer expires.
property 'durationInMilliseconds'
durationInMilliseconds: number;
The length of time, in milliseconds, for which events from connected gadgets will be passed to the skill. Your skill will continue to receive events until this duration expires or the event handler is otherwise stopped.
property 'expirationPayload'
expirationPayload?: any;
The payload that was defined in the StartEventHandlerDirective. The skill will receive if and only if the Event Handler duration expired.
interface ExpiredRequest
interface ExpiredRequest {}
This is the event received by the skill at expiry of an Event Handler.
property 'expirationPayload'
expirationPayload?: any;
The free form JSON object that the skill will receive if and only if the Event Handler duration expired.
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token?: string;
The unique token specified by the StartEventHandlerDirective.
property 'type'
type: 'CustomInterfaceController.Expired';
interface Header
interface Header {}
Endpoint Event header
property 'name'
name: string;
The developer-defined name of the custom interface.
property 'namespace'
namespace: string;
The developer-defined namespace for the custom interface.
interface SendDirectiveDirective
interface SendDirectiveDirective {}
The directive to be delivered to the gadgets. Each directive is targeted to one gadget (that is, one endpointId). To target the same directive to multiple gadgets, include one directive for each gadget in the response.
property 'endpoint'
endpoint?: interfaces.customInterfaceController.Endpoint;
Identifies the gadget where the directive should be sent to. Each directive is targeted to one gadget (that is, one endpointId). If the same directive is be sent to multiple gadgets, include one directive for each gadget in the response.
property 'header'
header?: interfaces.customInterfaceController.Header;
The object that contains the header of the directive.
property 'payload'
payload?: any;
The free form JSON object.
property 'type'
type: 'CustomInterfaceController.SendDirective';
interface StartEventHandlerDirective
interface StartEventHandlerDirective {}
This directive configures and starts an event handler. This will enable the skill to receive Custom Events. A skill can only have one active Event Handler at a time.
property 'eventFilter'
eventFilter?: interfaces.customInterfaceController.EventFilter;
property 'expiration'
expiration?: interfaces.customInterfaceController.Expiration;
property 'token'
token?: string;
A unique string to identify the Event Handler. This identifier is associated with all events dispatched by the Event Handler while it is active.
property 'type'
type: 'CustomInterfaceController.StartEventHandler';
interface StopEventHandlerDirective
interface StopEventHandlerDirective {}
This directive stops a running Event Handler associated with the provided token. The Expiration payload will not be sent if this executed before the Event Handler duration expired.
type FilterMatchAction
type FilterMatchAction = 'SEND_AND_TERMINATE' | 'SEND';
The behavior to be performed by the platform on a successful filter expression match.
namespace interfaces.display
namespace interfaces.display {}
interface BodyTemplate1
interface BodyTemplate1 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'textContent'
textContent?: interfaces.display.TextContent;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'BodyTemplate1';
interface BodyTemplate2
interface BodyTemplate2 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'image'
image?: interfaces.display.Image;
property 'textContent'
textContent?: interfaces.display.TextContent;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'BodyTemplate2';
interface BodyTemplate3
interface BodyTemplate3 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'image'
image?: interfaces.display.Image;
property 'textContent'
textContent?: interfaces.display.TextContent;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'BodyTemplate3';
interface BodyTemplate6
interface BodyTemplate6 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'image'
image?: interfaces.display.Image;
property 'textContent'
textContent?: interfaces.display.TextContent;
property 'token'
token?: string;
property 'type'
type: 'BodyTemplate6';
interface BodyTemplate7
interface BodyTemplate7 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'image'
image?: interfaces.display.Image;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'BodyTemplate7';
interface DisplayInterface
interface DisplayInterface {}
property 'markupVersion'
markupVersion?: string;
property 'templateVersion'
templateVersion?: string;
interface DisplayState
interface DisplayState {}
property 'token'
token?: string;
interface ElementSelectedRequest
interface ElementSelectedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'token'
token: string;
property 'type'
type: 'Display.ElementSelected';
interface HintDirective
interface HintDirective {}
interface Image
interface Image {}
property 'contentDescription'
contentDescription?: string;
property 'sources'
sources?: Array<interfaces.display.ImageInstance>;
interface ImageInstance
interface ImageInstance {}
property 'heightPixels'
heightPixels?: number;
property 'size'
size?: interfaces.display.ImageSize;
property 'url'
url: string;
property 'widthPixels'
widthPixels?: number;
interface ListItem
interface ListItem {}
property 'image'
image?: interfaces.display.Image;
property 'textContent'
textContent?: interfaces.display.TextContent;
property 'token'
token: string;
interface ListTemplate1
interface ListTemplate1 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'listItems'
listItems?: Array<interfaces.display.ListItem>;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'ListTemplate1';
interface ListTemplate2
interface ListTemplate2 {}
property 'backButton'
backButton?: interfaces.display.BackButtonBehavior;
property 'backgroundImage'
backgroundImage?: interfaces.display.Image;
property 'listItems'
listItems?: Array<interfaces.display.ListItem>;
property 'title'
title?: string;
property 'token'
token?: string;
property 'type'
type: 'ListTemplate2';
interface PlainText
interface PlainText {}
interface PlainTextHint
interface PlainTextHint {}
interface RenderTemplateDirective
interface RenderTemplateDirective {}
property 'template'
template?: interfaces.display.Template;
property 'type'
type: 'Display.RenderTemplate';
interface TextContent
interface TextContent {}
property 'primaryText'
primaryText?: interfaces.display.TextField;
property 'secondaryText'
secondaryText?: interfaces.display.TextField;
property 'tertiaryText'
tertiaryText?: interfaces.display.TextField;
type BackButtonBehavior
type BackButtonBehavior = 'HIDDEN' | 'VISIBLE';
type Hint
type Hint = interfaces.display.PlainTextHint;
type ImageSize
type ImageSize = 'X_SMALL' | 'SMALL' | 'MEDIUM' | 'LARGE' | 'X_LARGE';
type Template
type Template = | interfaces.display.ListTemplate2 | interfaces.display.ListTemplate1 | interfaces.display.BodyTemplate7 | interfaces.display.BodyTemplate6 | interfaces.display.BodyTemplate3 | interfaces.display.BodyTemplate2 | interfaces.display.BodyTemplate1;
type TextField
type TextField = interfaces.display.RichText | interfaces.display.PlainText;
namespace interfaces.gadgetController
namespace interfaces.gadgetController {}
interface SetLightDirective
interface SetLightDirective {}
Sends Alexa a command to modify the behavior of connected Echo Buttons.
property 'parameters'
parameters?: services.gadgetController.SetLightParameters;
property 'targetGadgets'
targetGadgets?: Array<string>;
The gadget IDs that will receive the command. An empty array, or leaving this parameter out, signifies that all gadgets will receive the command.
property 'type'
type: 'GadgetController.SetLight';
property 'version'
version?: number;
The version of the directive. Must be set to 1.
namespace interfaces.gameEngine
namespace interfaces.gameEngine {}
interface InputHandlerEventRequest
interface InputHandlerEventRequest {}
Sent when the conditions of an Echo Button event that your skill defined were met.
property 'events'
events?: Array<services.gameEngine.InputHandlerEvent>;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'originatingRequestId'
originatingRequestId?: string;
The corresponding identifier of the request that started the input handler.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'GameEngine.InputHandlerEvent';
interface StartInputHandlerDirective
interface StartInputHandlerDirective {}
property 'events'
events?: { [key: string]: services.gameEngine.Event;};
The logic that determines when your skill is notified of Echo Button input. Events are listed here as object keys, where the keys specify the name of an event.
property 'proxies'
proxies?: Array<string>;
Names for unknown gadget IDs to use in recognizers, allocated on a first-come, first-served basis.
property 'recognizers'
recognizers?: { [key: string]: services.gameEngine.Recognizer;};
Conditions that, at any moment, are either true or false. You use recognizers when you specify the conditions under which your skill is notified of Echo Button input.
property 'timeout'
timeout?: number;
The maximum run time for this Input Handler, in milliseconds. Although this parameter is required, you can specify events with conditions on which to end the Input Handler earlier.
property 'type'
type: 'GameEngine.StartInputHandler';
interface StopInputHandlerDirective
interface StopInputHandlerDirective {}
property 'originatingRequestId'
originatingRequestId?: string;
The
requestId
of the request that started the input handler.
property 'type'
type: 'GameEngine.StopInputHandler';
namespace interfaces.geolocation
namespace interfaces.geolocation {}
interface Altitude
interface Altitude {}
An object containing the altitude information of the device.
property 'accuracyInMeters'
accuracyInMeters: number;
A double representing the accuracy of the altitude measurement in meters.
property 'altitudeInMeters'
altitudeInMeters: number;
A double representing the altitude of the device in meters.
interface Coordinate
interface Coordinate {}
An object containing the location information of the device.
property 'accuracyInMeters'
accuracyInMeters: number;
A double representing the accuracy of geolocation data in meters.
property 'latitudeInDegrees'
latitudeInDegrees: number;
A double representing the latitude in degrees of the device.
property 'longitudeInDegrees'
longitudeInDegrees: number;
A double representing the longitude in degrees of the device.
interface GeolocationCommonState
interface GeolocationCommonState {}
The common object to define the basic geolocation states
property 'altitude'
altitude?: interfaces.geolocation.Altitude;
property 'coordinate'
coordinate?: interfaces.geolocation.Coordinate;
property 'heading'
heading?: interfaces.geolocation.Heading;
property 'speed'
speed?: interfaces.geolocation.Speed;
property 'timestamp'
timestamp?: string;
Specifies the time when the geolocation data was last collected on the device.
interface GeolocationInterface
interface GeolocationInterface {}
interface GeolocationState
interface GeolocationState {}
The geolocation object used in the Context of API
property 'altitude'
altitude?: interfaces.geolocation.Altitude;
property 'coordinate'
coordinate?: interfaces.geolocation.Coordinate;
property 'heading'
heading?: interfaces.geolocation.Heading;
property 'locationServices'
locationServices?: interfaces.geolocation.LocationServices;
property 'speed'
speed?: interfaces.geolocation.Speed;
property 'timestamp'
timestamp?: string;
Specifies the time when the geolocation data was last collected on the device.
interface Heading
interface Heading {}
An object containing the heading direction information of the device.
property 'accuracyInDegrees'
accuracyInDegrees?: number;
A double representing the accuracy of the heading measurement in degrees.
property 'directionInDegrees'
directionInDegrees: number;
A double representing the direction of the device in degrees.
interface LocationServices
interface LocationServices {}
An object containing status and access.
property 'access'
access: interfaces.geolocation.Access;
A string representing if Alexa has access to location services running on the hostOS of device.
property 'status'
status: interfaces.geolocation.Status;
A string representing the status of whether location services is currently running or not on the host OS of device.
interface Speed
interface Speed {}
An object containing the speed information of the device.
property 'accuracyInMetersPerSecond'
accuracyInMetersPerSecond?: number;
A double representing the accuracy of the speed measurement in meters.
property 'speedInMetersPerSecond'
speedInMetersPerSecond: number;
A double representing the speed of the device in meters.
type Access
type Access = 'ENABLED' | 'DISABLED' | 'UNKNOWN';
A string representing if Alexa has access to location services running on the hostOS of device.
type Status
type Status = 'RUNNING' | 'STOPPED';
A string representing the status of whether location services is currently running or not on the host OS of device.
namespace interfaces.messaging
namespace interfaces.messaging {}
interface MessageReceivedRequest
interface MessageReceivedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'message'
message: { [key: string]: any;};
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Messaging.MessageReceived';
namespace interfaces.monetization
namespace interfaces.monetization {}
namespace interfaces.monetization.v1
namespace interfaces.monetization.v1 {}
interface InSkillProduct
interface InSkillProduct {}
Entity to define In Skill Product over which actions will be performed.
property 'productId'
productId: string;
The product ID of In Skill Product.
type PurchaseResult
type PurchaseResult = | 'ACCEPTED' | 'DECLINED' | 'NOT_ENTITLED' | 'ERROR' | 'ALREADY_PURCHASED';
Response from purchase directives: * ACCEPTED - User have accepted the offer to purchase the product * DECLINED - User have declined the offer to purchase the product * NOT_ENTITLED - User tries to cancel/return a product he/she is not entitled to. * ALREADY_PURCHASED - User has already purchased the product * ERROR - An internal error occurred
namespace interfaces.navigation
namespace interfaces.navigation {}
interface NavigationInterface
interface NavigationInterface {}
namespace interfaces.navigation.assistance
namespace interfaces.navigation.assistance {}
interface AnnounceRoadRegulation
interface AnnounceRoadRegulation {}
New directive that Alexa will send to navigation engine to query road regulations about the road segments that the user is on.
property 'type'
type: 'Navigation.Assistance.AnnounceRoadRegulation';
namespace interfaces.playbackcontroller
namespace interfaces.playbackcontroller {}
interface NextCommandIssuedRequest
interface NextCommandIssuedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'PlaybackController.NextCommandIssued';
interface PauseCommandIssuedRequest
interface PauseCommandIssuedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'PlaybackController.PauseCommandIssued';
interface PlayCommandIssuedRequest
interface PlayCommandIssuedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'PlaybackController.PlayCommandIssued';
interface PreviousCommandIssuedRequest
interface PreviousCommandIssuedRequest {}
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'PlaybackController.PreviousCommandIssued';
namespace interfaces.system
namespace interfaces.system {}
interface Error
interface Error {}
interface ErrorCause
interface ErrorCause {}
property 'requestId'
requestId: string;
interface ExceptionEncounteredRequest
interface ExceptionEncounteredRequest {}
property 'cause'
cause: interfaces.system.ErrorCause;
property 'error'
error: interfaces.system.Error;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'System.ExceptionEncountered';
interface SystemState
interface SystemState {}
property 'apiAccessToken'
apiAccessToken?: string;
A bearer token string that can be used by the skill (during the skill session) to access Alexa APIs resources of the registered Alexa customer and/or person who is making the request. This token encapsulates the permissions authorized under the registered Alexa account and device, and (optionally) the recognized person. Some resources, such as name or email, require explicit customer consent."
property 'apiEndpoint'
apiEndpoint: string;
A string that references the correct base URI to refer to by region, for use with APIs such as the Device Location API and Progressive Response API.
property 'application'
application: Application;
property 'device'
device?: Device;
property 'person'
person?: Person;
property 'unit'
unit?: interfaces.systemUnit.Unit;
property 'user'
user: User;
type ErrorType
type ErrorType = | 'INVALID_RESPONSE' | 'DEVICE_COMMUNICATION_ERROR' | 'INTERNAL_SERVICE_ERROR';
namespace interfaces.systemUnit
namespace interfaces.systemUnit {}
interface Unit
interface Unit {}
An object that represents a logical entity for organizing actors and resources that interact with Alexa systems.
property 'persistentUnitId'
persistentUnitId?: string;
A string that represents a unique identifier for the unit in the context of a request. The length of this identifier can vary, but is never more than 255 characters. Alexa generates this string only when the request made to your skill has a valid unit context. This is another unit identifier associated with an organization's developer account. Only registered Alexa for Residential and Alexa for Hospitality vendors can see the Read PersistentUnitId toggle in the Alexa skills developers console. This identifier is scoped to a vendor, therefore all skills that belong to particular vendor share this identifier, therefore it will stay the same regardless of skill enablement.
property 'unitId'
unitId?: string;
A string that represents a unique identifier for the unit in the context of a request. The length of this identifier can vary, but is never more than 255 characters. Alexa generates this string only when a request made to your skill has a valid unit context. This identifier is scoped to a skill. Normally, disabling and re-enabling a skill generates a new identifier.
namespace interfaces.tasks
namespace interfaces.tasks {}
interface CompleteTaskDirective
interface CompleteTaskDirective {}
This is the directive that a skill can send as part of their response to a session based request. The response will contain the result of the task that the skill is launched for.
namespace interfaces.videoapp
namespace interfaces.videoapp {}
interface LaunchDirective
interface LaunchDirective {}
property 'type'
type: 'VideoApp.Launch';
property 'videoItem'
videoItem: interfaces.videoapp.VideoItem;
interface Metadata
interface Metadata {}
property 'subtitle'
subtitle?: string;
property 'title'
title?: string;
interface VideoAppInterface
interface VideoAppInterface {}
interface VideoItem
interface VideoItem {}
property 'metadata'
metadata?: interfaces.videoapp.Metadata;
property 'source'
source: string;
namespace interfaces.viewport
namespace interfaces.viewport {}
interface APLTViewportState
interface APLTViewportState {}
This object contains the characteristics related to the text device's viewport.
property 'characterFormat'
characterFormat: interfaces.viewport.aplt.CharacterFormat;
property 'id'
id?: string;
unique identifier of a viewport object
property 'interSegments'
interSegments?: Array<interfaces.viewport.aplt.InterSegment>;
list of inter-segment objects
property 'lineCount'
lineCount: number;
vertical dimension of text display in number of rows
property 'lineLength'
lineLength: number;
horizontal dimension of text display in number of characters
property 'supportedProfiles'
supportedProfiles: Array<interfaces.viewport.aplt.ViewportProfile>;
List of profiles that device can emulate.
property 'type'
type: 'APLT';
interface APLViewportState
interface APLViewportState {}
This object contains the characteristics related to the APL device's viewport.
property 'canRotate'
canRotate: boolean;
Indicates if the viewport can be rotated through 90 degrees.
property 'configuration'
configuration: interfaces.viewport.apl.ViewportConfiguration;
property 'dpi'
dpi: number;
The pixel density of the viewport.
property 'id'
id?: string;
unique identifier of a viewport object
property 'presentationType'
presentationType: interfaces.viewport.PresentationType;
property 'shape'
shape: interfaces.viewport.Shape;
property 'type'
type: 'APL';
interface Experience
interface Experience {}
An experience represents a viewing mode used to interact with the device.
property 'arcMinuteHeight'
arcMinuteHeight?: number;
The number of vertical arc minutes the viewport occupies in the user's visual field when viewed within this experience.
property 'arcMinuteWidth'
arcMinuteWidth?: number;
The number of horizontal arc minutes the viewport occupies in the user's visual field when viewed within this experience.
property 'canResize'
canResize?: boolean;
Indicates if the viewport can be resized, limiting the area which can be used to render the APL response.
property 'canRotate'
canRotate?: boolean;
Indicates if the viewport can be rotated through 90 degrees.
interface ViewportState
interface ViewportState {}
This object contains the characteristics related to the device's viewport.
property 'currentPixelHeight'
currentPixelHeight?: number;
The number of vertical pixels in the viewport that are currently available for Alexa to render an experience.
property 'currentPixelWidth'
currentPixelWidth?: number;
The number of horizontal pixels in the viewport that are currently available for Alexa to render an experience.
property 'dpi'
dpi?: number;
The pixel density of the viewport.
property 'experiences'
experiences?: Array<interfaces.viewport.Experience>;
The experiences supported by the device, in descending order of arcMinuteWidth and arcMinuteHeight.
property 'keyboard'
keyboard?: Array<interfaces.viewport.Keyboard>;
The physical button input mechanisms supported by the device. An empty array indicates physical button input is unsupported.
property 'mode'
mode?: interfaces.viewport.Mode;
property 'pixelHeight'
pixelHeight?: number;
The number of pixels present in the viewport at its maximum height.
property 'pixelWidth'
pixelWidth?: number;
The number of pixels present in the viewport at its maximum width.
property 'shape'
shape?: interfaces.viewport.Shape;
property 'touch'
touch?: Array<interfaces.viewport.Touch>;
The types of touch supported by the device. An empty array indicates no touch support.
property 'video'
video?: interfaces.viewport.ViewportStateVideo;
interface ViewportStateVideo
interface ViewportStateVideo {}
Details of the technologies which are available for playing video on the device.
property 'codecs'
codecs?: Array<interfaces.viewport.video.Codecs>;
Codecs which are available for playing video on the device.
interface ViewportVideo
interface ViewportVideo {}
Details of the technologies which are available for playing video on the device.
property 'codecs'
codecs?: Array<interfaces.viewport.video.Codecs>;
Codecs which are available for playing video on the device.
type Dialog
type Dialog = 'SUPPORTED' | 'UNSUPPORTED';
Indicates that dialog playback is supported or desired in the given interaction mode. Player interface abilities controlled by this field are any directives that would render audio on the dialog channel.
type Keyboard
type Keyboard = 'DIRECTION';
Represents a physical button input mechanism which can be used to interact with elements shown on the viewport.
type Mode
type Mode = 'AUTO' | 'HUB' | 'MOBILE' | 'PC' | 'TV';
The expected use case of the device's viewport, encapsulating the available input mechanisms and user viewing distance.
type PresentationType
type PresentationType = 'STANDARD' | 'OVERLAY';
Type of the viewport. *
STANDARD
Indicates that this viewport occupies an exclusive area of the screen. *OVERLAY
Indicates that the viewport is an overlay, sharing the screen with other experiences.
type Shape
type Shape = 'RECTANGLE' | 'ROUND';
The shape of the viewport.
type Touch
type Touch = 'SINGLE';
Represents a type of touch input suppported by the device.
type TypedViewportState
type TypedViewportState = | interfaces.viewport.APLViewportState | interfaces.viewport.APLTViewportState;
namespace interfaces.viewport.apl
namespace interfaces.viewport.apl {}
interface CurrentConfiguration
interface CurrentConfiguration {}
The viewport configuration at the time of the request.
interface ViewportConfiguration
interface ViewportConfiguration {}
property 'current'
current: interfaces.viewport.apl.CurrentConfiguration;
namespace interfaces.viewport.aplt
namespace interfaces.viewport.aplt {}
interface InterSegment
interface InterSegment {}
property 'characters'
characters: string;
list of characters that can be rendered
property 'x'
x: number;
horizontal position (0-based index) in characters
property 'y'
y: number;
vertical position (0-based index) in rows
type CharacterFormat
type CharacterFormat = 'SEVEN_SEGMENT';
Supported character set on a text display *
SEVEN_SEGMENT
- 7-segment display
type ViewportProfile
type ViewportProfile = 'FOUR_CHARACTER_CLOCK';
name of viewport's profile
namespace interfaces.viewport.size
namespace interfaces.viewport.size {}
interface ContinuousViewportSize
interface ContinuousViewportSize {}
Defines range of size with minimum and maximum values for with and height.
property 'maxPixelHeight'
maxPixelHeight: number;
property 'maxPixelWidth'
maxPixelWidth: number;
property 'minPixelHeight'
minPixelHeight: number;
property 'minPixelWidth'
minPixelWidth: number;
property 'type'
type: 'CONTINUOUS';
interface DiscreteViewportSize
interface DiscreteViewportSize {}
Defines a fixed size of viewport.
property 'pixelHeight'
pixelHeight: number;
property 'pixelWidth'
pixelWidth: number;
property 'type'
type: 'DISCRETE';
type ViewportSize
type ViewportSize = | interfaces.viewport.size.ContinuousViewportSize | interfaces.viewport.size.DiscreteViewportSize;
Information regarding the range of sizes for a configuration.
namespace interfaces.viewport.video
namespace interfaces.viewport.video {}
type Codecs
type Codecs = 'H_264_41' | 'H_264_42';
A named bundle of codecs which are available for playing video on the viewport.
namespace services
namespace services {}
class BaseServiceClient
abstract class BaseServiceClient {}
Class to be used as the base class for the generated service clients.
constructor
protected constructor(apiConfiguration: ApiConfiguration);
Creates new instance of the BaseServiceClient
Parameter apiConfiguration
configuration parameter to provide dependencies to service client instance
property apiConfiguration
protected apiConfiguration: ApiConfiguration;
ApiConfiguration instance to provide dependencies for this service client
method invoke
protected invoke: ( method: string, endpoint: string, path: string, pathParams: Map<string, string>, queryParams: Array<{ key: string; value: string }>, headerParams: Array<{ key: string; value: string }>, bodyParam: any, errors: Map<number, string>, nonJsonBody?: boolean) => Promise<any>;
Invocation wrapper to implement service operations in generated classes
Parameter method
HTTP method, such as 'POST', 'GET', 'DELETE', etc.
Parameter endpoint
base API url
Parameter path
the path pattern with possible placeholders for path parameters in form {paramName}
Parameter pathParams
path parameters collection
Parameter queryParams
query parameters collection
Parameter headerParams
headers collection
Parameter bodyParam
if body parameter is present it is provided here, otherwise null or undefined
Parameter errors
maps recognized status codes to messages
Parameter nonJsonBody
if the body is in JSON format
method withRequestInterceptors
withRequestInterceptors: ( ...requestInterceptors: (( request: ApiClientRequest ) => void | Promise<void>)[]) => BaseServiceClient;
Sets array of functions that is going to be executed before the request is send
Parameter requestInterceptor
request interceptor function
Returns
{BaseServiceClient}
method withResponseInterceptors
withResponseInterceptors: ( ...responseInterceptors: (( response: ApiClientResponse ) => void | Promise<void>)[]) => BaseServiceClient;
Sets array of functions that is going to be executed after the request is send
Parameter responseInterceptor
response interceptor function
Returns
{BaseServiceClient}
class LwaServiceClient
class LwaServiceClient extends BaseServiceClient {}
Class to be used to call Amazon LWA to retrieve access tokens.
constructor
constructor(options: { apiConfiguration: ApiConfiguration; authenticationConfiguration: AuthenticationConfiguration; grantType?: string;});
property AUTH_ENDPOINT
protected static AUTH_ENDPOINT: string;
property authenticationConfiguration
protected authenticationConfiguration: AuthenticationConfiguration;
property CLIENT_CREDENTIALS_GRANT_TYPE
protected static CLIENT_CREDENTIALS_GRANT_TYPE: string;
property EXPIRY_OFFSET_MILLIS
protected static EXPIRY_OFFSET_MILLIS: number;
property grantType
protected grantType: string;
property LWA_CREDENTIALS_GRANT_TYPE
protected static LWA_CREDENTIALS_GRANT_TYPE: string;
property REFRESH_ACCESS_TOKEN
protected static REFRESH_ACCESS_TOKEN: string;
property tokenStore
protected tokenStore: { [cacheKey: string]: AccessToken };
method generateAccessToken
protected generateAccessToken: ( accessTokenRequest: AccessTokenRequest) => Promise<AccessTokenResponse>;
method getAccessToken
getAccessToken: (scope?: string) => Promise<string>;
method getAccessTokenForScope
getAccessTokenForScope: (scope: string) => Promise<string>;
class ServiceClientFactory
class ServiceClientFactory {}
Helper class that instantiates an ServiceClient implementation automatically resolving its required ApiConfiguration. ServiceClientFactory
constructor
constructor(apiConfiguration: ApiConfiguration);
property apiConfiguration
protected apiConfiguration: ApiConfiguration;
method getDeviceAddressServiceClient
getDeviceAddressServiceClient: () => deviceAddress.DeviceAddressServiceClient;
method getDirectiveServiceClient
getDirectiveServiceClient: () => directive.DirectiveServiceClient;
method getEndpointEnumerationServiceClient
getEndpointEnumerationServiceClient: () => endpointEnumeration.EndpointEnumerationServiceClient;
method getListManagementServiceClient
getListManagementServiceClient: () => listManagement.ListManagementServiceClient;
method getMonetizationServiceClient
getMonetizationServiceClient: () => monetization.MonetizationServiceClient;
method getReminderManagementServiceClient
getReminderManagementServiceClient: () => reminderManagement.ReminderManagementServiceClient;
method getTimerManagementServiceClient
getTimerManagementServiceClient: () => timerManagement.TimerManagementServiceClient;
method getUpsServiceClient
getUpsServiceClient: () => ups.UpsServiceClient;
interface AccessToken
interface AccessToken {}
Represents a Login With Amazon(LWA) access token
interface AccessTokenRequest
interface AccessTokenRequest {}
Represents a request for retrieving a Login With Amazon(LWA) access token
property clientId
clientId: string;
property clientSecret
clientSecret: string;
property refreshToken
refreshToken?: string;
property scope
scope?: string;
interface AccessTokenResponse
interface AccessTokenResponse {}
Represents a response returned by LWA containing a Login With Amazon(LWA) access token
property access_token
access_token: string;
property expires_in
expires_in: number;
property scope
scope: string;
property token_type
token_type: string;
interface ApiClient
interface ApiClient {}
Represents a basic contract for API request execution ApiClient
method invoke
invoke: (request: ApiClientRequest) => Promise<ApiClientResponse>;
Dispatches a request to an API endpoint described in the request. An ApiClient is expected to resolve the Promise in the case an API returns a non-200 HTTP status code. The responsibility of translating a particular response code to an error lies with the caller to invoke.
Parameter request
request to dispatch to the ApiClient
Returns
{Promise} Response from the ApiClient ApiClient
interface ApiClientMessage
interface ApiClientMessage {}
Represents the interface between ApiClient and a Service Client. ApiClientMessage
interface ApiClientRequest
interface ApiClientRequest extends ApiClientMessage {}
Represents a request sent from Service Clients to an ApiClient implementation. ApiClientRequest {ApiClientMessage}
interface ApiClientResponse
interface ApiClientResponse extends ApiClientMessage {}
Represents a response returned by ApiClient implementation to a Service Client. ApiClientResponse {ApiClientMessage}
property statusCode
statusCode: number;
Result code of the attempt to satisfy the request. Normally this corresponds to the HTTP status code returned by the server.
interface ApiConfiguration
interface ApiConfiguration {}
Represents an interface that provides API configuration options needed by service clients. ApiConfiguration
property apiClient
apiClient: ApiClient;
Configured ApiClient implementation
property apiEndpoint
apiEndpoint: string;
Endpoint to hit by the service client instance
property authorizationValue
authorizationValue: string;
Authorization value to be used on any calls of the service client instance
interface ApiResponse
interface ApiResponse {}
Represents a response with parsed body. ApiResponse
property body
body?: any;
property headers
headers: Array<{ key: string; value: string;}>;
property statusCode
statusCode: number;
interface AuthenticationConfiguration
interface AuthenticationConfiguration {}
Represents the authentication configuration for a client ID and client secret
property authEndpoint
authEndpoint?: string;
property clientId
clientId: string;
property clientSecret
clientSecret: string;
property refreshToken
refreshToken?: string;
namespace services.datastore
namespace services.datastore {}
class DatastoreServiceClient
class DatastoreServiceClient extends BaseServiceClient {}
constructor
constructor( apiConfiguration: ApiConfiguration, authenticationConfiguration: AuthenticationConfiguration, customUserAgent?: string);
method callCancelCommandsV1
callCancelCommandsV1: (queuedResultId: string) => Promise<ApiResponse>;
Cancel pending DataStore commands.
Parameter queuedResultId
A unique identifier to query result for queued delivery for offline devices (DEVICE_UNAVAILABLE).
method callCommandsV1
callCommandsV1: ( commandsRequest: services.datastore.v1.CommandsRequest) => Promise<ApiResponse>;
Send DataStore commands to Alexa device.
Parameter commandsRequest
method callQueuedResultV1
callQueuedResultV1: ( queuedResultId: string, maxResults?: number, nextToken?: string) => Promise<ApiResponse>;
Query statuses of deliveries to offline devices returned by commands API.
Parameter queuedResultId
A unique identifier to query result for queued delivery for offline devices (DEVICE_UNAVAILABLE).
Parameter maxResults
Maximum number of CommandsDispatchResult items to return.
Parameter nextToken
The value of nextToken in the response to fetch next page. If not specified, the request fetches result for the first page.
method cancelCommandsV1
cancelCommandsV1: (queuedResultId: string) => Promise<void>;
Cancel pending DataStore commands.
Parameter queuedResultId
A unique identifier to query result for queued delivery for offline devices (DEVICE_UNAVAILABLE).
method commandsV1
commandsV1: ( commandsRequest: services.datastore.v1.CommandsRequest) => Promise<services.datastore.v1.CommandsResponse>;
Send DataStore commands to Alexa device.
Parameter commandsRequest
method queuedResultV1
queuedResultV1: ( queuedResultId: string, maxResults?: number, nextToken?: string) => Promise<services.datastore.v1.QueuedResultResponse>;
Query statuses of deliveries to offline devices returned by commands API.
Parameter queuedResultId
A unique identifier to query result for queued delivery for offline devices (DEVICE_UNAVAILABLE).
Parameter maxResults
Maximum number of CommandsDispatchResult items to return.
Parameter nextToken
The value of nextToken in the response to fetch next page. If not specified, the request fetches result for the first page.
namespace services.datastore.v1
namespace services.datastore.v1 {}
interface CancelCommandsRequestError
interface CancelCommandsRequestError {}
interface ClearCommand
interface ClearCommand {}
Remove all existing data in skill's DataStore.
property 'type'
type: 'CLEAR';
interface CommandsDispatchResult
interface CommandsDispatchResult {}
property 'deviceId'
deviceId: string;
identifier of a device.
property 'message'
message?: string;
Opaque description of the error.
property 'type'
type: services.datastore.v1.DispatchResultType;
interface CommandsRequest
interface CommandsRequest {}
property 'attemptDeliveryUntil'
attemptDeliveryUntil?: string;
Date and time, in ISO-8601 representation, when to halt the attempt to deliver the commands.
property 'commands'
commands: Array<services.datastore.v1.Command>;
Collection of ordered commands which needs to be executed in DataStore.
property 'target'
target: services.datastore.v1.Target;
Target where update needs to be published.
interface CommandsRequestError
interface CommandsRequestError {}
interface CommandsResponse
interface CommandsResponse {}
property 'queuedResultId'
queuedResultId?: string;
A unique identifier to query result for queued delivery for offline devices (DEVICE_UNAVAILABLE). If there is no offline device, this value is not specified. The result will be available for query at least one hour after attemptDeliveryUntil.
property 'results'
results: Array<services.datastore.v1.CommandsDispatchResult>;
List of results for each dispatch to a device target. This indicates the results of 1st attempt of deliveries.
interface Devices
interface Devices {}
interface PutNamespaceCommand
interface PutNamespaceCommand {}
Creates a new namespace. If the namespace already exists, the command succeeds without any change.
property 'namespace'
namespace: string;
Namespace where object needs to be created. Its unique identifier within skill's DataStore.
property 'type'
type: 'PUT_NAMESPACE';
interface PutObjectCommand
interface PutObjectCommand {}
Creates or updates an object.
property 'content'
content: any;
Open content payload that is not inspected by the DataStore.
property 'key'
key: string;
Unique identifier of the objects. Needs to be unique only within client's namespace not globally unique.
property 'namespace'
namespace: string;
Namespace where object needs to be created. Its unique identifier within skill's DataStore.
property 'type'
type: 'PUT_OBJECT';
interface QueuedResultRequestError
interface QueuedResultRequestError {}
interface QueuedResultResponse
interface QueuedResultResponse {}
Response for queued deliveries query.
property 'items'
items: Array<services.datastore.v1.CommandsDispatchResult>;
The array only contains results which have not been a SUCCESS delivery. An empty response means that all targeted devices has been received the commands payload.
property 'paginationContext'
paginationContext?: services.datastore.v1.ResponsePaginationContext;
interface RemoveNamespaceCommand
interface RemoveNamespaceCommand {}
Deletes an existing namespace. If the namespace doesn't exist, this command succeeds without any change.
property 'namespace'
namespace: string;
Namespace which needs to be removed. It's unique identifier within skill's DataStore.
property 'type'
type: 'REMOVE_NAMESPACE';
interface RemoveObjectCommand
interface RemoveObjectCommand {}
Deletes an existing object. If the object doesn't exist, this command succeeds without any change.
property 'key'
key: string;
Unique identifier of the objects. Needs to be unique only within client's namespace not globally unique.
property 'namespace'
namespace: string;
Namespace where the object is stored. Its unique identifier within skill's DataStore.
property 'type'
type: 'REMOVE_OBJECT';
interface ResponsePaginationContext
interface ResponsePaginationContext {}
property 'nextToken'
nextToken?: string;
The token of next page - Not specified for the response of last page.
property 'previousToken'
previousToken?: string;
The token of previous page - Not specified for the response of first page.
property 'totalCount'
totalCount: number;
The total number of results at the time of current response.
interface User
interface User {}
type CancelCommandsRequestErrorType
type CancelCommandsRequestErrorType = | 'COMMANDS_DELIVERED' | 'CONCURRENCY_ERROR' | 'NOT_FOUND' | 'INVALID_ACCESS_TOKEN' | 'DATASTORE_SUPPORT_REQUIRED' | 'TOO_MANY_REQUESTS' | 'DATASTORE_UNAVAILABLE';
Error code of the response. *
COMMANDS_DELIVERED
- The pending commands have been delivered. *CONCURRENCY_ERROR
- There are concurrent attempts to deliver the pending commands. *NOT_FOUND
- Unable to find pending request for the given queuedResultId. *INVALID_ACCESS_TOKEN
- Access token is expire or invalid. *DATASTORE_SUPPORT_REQUIRED
- Client has not opted into DataStore interface in skill manifest. *TOO_MANY_REQUESTS
- The request has been throttled because client has exceed maximum allowed request rate. *DATASTORE_UNAVAILABLE
- Internal service error.
type Command
type Command = | services.datastore.v1.RemoveNamespaceCommand | services.datastore.v1.RemoveObjectCommand | services.datastore.v1.PutObjectCommand | services.datastore.v1.ClearCommand | services.datastore.v1.PutNamespaceCommand;
DataStore command which will run in DataStore.
type CommandsRequestErrorType
type CommandsRequestErrorType = | 'COMMANDS_PAYLOAD_EXCEEDS_LIMIT' | 'TOO_MANY_TARGETS' | 'NO_TARGET_DEFINED' | 'INVALID_REQUEST' | 'INVALID_ACCESS_TOKEN' | 'DATASTORE_SUPPORT_REQUIRED' | 'TOO_MANY_REQUESTS' | 'DATASTORE_UNAVAILABLE';
Error code of the response. *
COMMANDS_PAYLOAD_EXCEEDS_LIMIT
- The total size of commands cannot exceed maximum size in UTF-encoding. *TOO_MANY_TARGETS
- Number of target exceeds limits. *NO_TARGET_DEFINED
- There is no target defined. *INVALID_REQUEST
- request payload does not compliant with JSON schema. *INVALID_ACCESS_TOKEN
- Access token is expire or invalid. *DATASTORE_SUPPORT_REQUIRED
- Client has not opted into DataStore interface in skill manifest. *TOO_MANY_REQUESTS
- The request has been throttled because client has exceed maximum allowed request rate. *DATASTORE_UNAVAILABLE
- Internal service error.
type DispatchResultType
type DispatchResultType = | 'SUCCESS' | 'INVALID_DEVICE' | 'DEVICE_UNAVAILABLE' | 'DEVICE_PERMANENTLY_UNAVAILABLE' | 'CONCURRENCY_ERROR' | 'INTERNAL_ERROR' | 'PENDING_REQUEST_COUNT_EXCEEDS_LIMIT';
Defines success or a type of error from dispatch. *
SUCCESS
- device has received the payload. *INVALID_DEVICE
- device is not capable of processing the payload. *DEVICE_UNAVAILABLE
- dispatch failed because device is offline. *DEVICE_PERMANENTLY_UNAVAILABLE
- target no longer available to receive data. This is reported for a failed delivery attempt related to an unregistered device. *CONCURRENCY_ERROR
- there are concurrent attempts to update to the same device. *INTERNAL_ERROR
- dispatch failed because of unknown error - see message. *PENDING_REQUEST_COUNT_EXCEEDS_LIMIT
- the count of pending requests exceeds the limit.
type QueuedResultRequestErrorType
type QueuedResultRequestErrorType = | 'NOT_FOUND' | 'INVALID_REQUEST' | 'INVALID_ACCESS_TOKEN' | 'DATASTORE_SUPPORT_REQUIRED' | 'TOO_MANY_REQUESTS' | 'DATASTORE_UNAVAILABLE';
Error code of the response. *
NOT_FOUND
- queuedResultId is not found for the skill. *INVALID_REQUEST
- One or more request parameters are invalid, see message for more details. *INVALID_ACCESS_TOKEN
- Access token is expire or invalid. *DATASTORE_SUPPORT_REQUIRED
- Client has not opted into DataStore interface in skill manifest. *TOO_MANY_REQUESTS
- The request has been throttled because client has exceed maximum allowed request rate. *DATASTORE_UNAVAILABLE
- Internal service error.
type Target
type Target = services.datastore.v1.User | services.datastore.v1.Devices;
namespace services.deviceAddress
namespace services.deviceAddress {}
class DeviceAddressServiceClient
class DeviceAddressServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callGetCountryAndPostalCode
callGetCountryAndPostalCode: (deviceId: string) => Promise<ApiResponse>;
Gets the country and postal code of a device
Parameter deviceId
The device Id for which to get the country and postal code
method callGetFullAddress
callGetFullAddress: (deviceId: string) => Promise<ApiResponse>;
Gets the address of a device
Parameter deviceId
The device Id for which to get the address
method getCountryAndPostalCode
getCountryAndPostalCode: ( deviceId: string) => Promise<services.deviceAddress.ShortAddress>;
Gets the country and postal code of a device
Parameter deviceId
The device Id for which to get the country and postal code
method getFullAddress
getFullAddress: (deviceId: string) => Promise<services.deviceAddress.Address>;
Gets the address of a device
Parameter deviceId
The device Id for which to get the address
interface Address
interface Address {}
Represents the full address response from the service.
property 'addressLine1'
addressLine1?: string;
property 'addressLine2'
addressLine2?: string;
property 'addressLine3'
addressLine3?: string;
property 'city'
city?: string;
property 'countryCode'
countryCode?: string;
property 'districtOrCounty'
districtOrCounty?: string;
property 'postalCode'
postalCode?: string;
property 'stateOrRegion'
stateOrRegion?: string;
interface Error
interface Error {}
interface ShortAddress
interface ShortAddress {}
property 'countryCode'
countryCode?: string;
property 'postalCode'
postalCode?: string;
namespace services.directive
namespace services.directive {}
class DirectiveServiceClient
class DirectiveServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callEnqueue
callEnqueue: ( sendDirectiveRequest: services.directive.SendDirectiveRequest) => Promise<ApiResponse>;
Send directives to Alexa.
Parameter sendDirectiveRequest
Represents the request object to send in the payload.
method enqueue
enqueue: ( sendDirectiveRequest: services.directive.SendDirectiveRequest) => Promise<void>;
Send directives to Alexa.
Parameter sendDirectiveRequest
Represents the request object to send in the payload.
interface Error
interface Error {}
interface Header
interface Header {}
property 'requestId'
requestId: string;
This represents the current requestId for what the skill/speechlet was invoked.
interface SendDirectiveRequest
interface SendDirectiveRequest {}
Send Directive Request payload.
property 'directive'
directive: services.directive.Directive;
Directive Content.
property 'header'
header: services.directive.Header;
contains the header attributes of the send directive request.
interface SpeakDirective
interface SpeakDirective {}
type Directive
type Directive = services.directive.SpeakDirective;
namespace services.endpointEnumeration
namespace services.endpointEnumeration {}
class EndpointEnumerationServiceClient
class EndpointEnumerationServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callGetEndpoints
callGetEndpoints: () => Promise<ApiResponse>;
This API is invoked by the skill to retrieve endpoints connected to the Echo device.
method getEndpoints
getEndpoints: () => Promise<services.endpointEnumeration.EndpointEnumerationResponse>;
This API is invoked by the skill to retrieve endpoints connected to the Echo device.
interface EndpointCapability
interface EndpointCapability {}
property 'interface'
interface?: string;
The name of the capability interface.
property 'type'
type?: string;
The type of capability interface. This is usually AlexaInterface.
property 'version'
version?: string;
The version of the capability interface that the endpoint supports.
interface EndpointEnumerationResponse
interface EndpointEnumerationResponse {}
Contains the list of endpoints.
property 'endpoints'
endpoints?: Array<services.endpointEnumeration.EndpointInfo>;
The list of endpoints.
interface EndpointInfo
interface EndpointInfo {}
Contains the list of connected endpoints and their declared capabilities.
property 'capabilities'
capabilities?: Array<services.endpointEnumeration.EndpointCapability>;
The list of endpoint capabilities.
property 'endpointId'
endpointId?: string;
A unique identifier for the endpoint.
property 'friendlyName'
friendlyName?: string;
The name of the endpoint. Because this name might be changed by the user or the platform, it might be different than the Bluetooth friendly name.
namespace services.gadgetController
namespace services.gadgetController {}
interface AnimationStep
interface AnimationStep {}
property 'blend'
blend: boolean;
A boolean that indicates whether to interpolate from the previous color into this one over the course of this directive's durationMs.
property 'color'
color: string;
The color to render specified in RGB hexadecimal values. There are a number of Node.js libraries available for working with color.
property 'durationMs'
durationMs: number;
The duration in milliseconds to render this step.
interface LightAnimation
interface LightAnimation {}
property 'repeat'
repeat?: number;
The number of times to play this animation.
property 'sequence'
sequence?: Array<services.gadgetController.AnimationStep>;
The animation steps to render in order. The maximum number of steps that you can define is 38. The minimum is 0. Each step must have the following fields, all of which are required.
property 'targetLights'
targetLights?: Array<string>;
An array of strings that represent the light addresses on the target gadgets that this animation will be applied to. Because the Echo Button has one light only, use ["1"] to signify that this animation should be sent to light one.
interface SetLightParameters
interface SetLightParameters {}
Arguments that pertain to animating the buttons.
property 'animations'
animations?: Array<services.gadgetController.LightAnimation>;
property 'triggerEvent'
triggerEvent?: services.gadgetController.TriggerEventType;
property 'triggerEventTimeMs'
triggerEventTimeMs?: number;
type TriggerEventType
type TriggerEventType = 'buttonDown' | 'buttonUp' | 'none';
The action that triggers the animation. Possible values are as follows *
buttonDown
- Play the animation when the button is pressed. *buttonUp
- Play the animation when the button is released. *none
- Play the animation as soon as it arrives.
namespace services.gameEngine
namespace services.gameEngine {}
interface DeviationRecognizer
interface DeviationRecognizer {}
The deviation recognizer returns true when another specified recognizer reports that the player has deviated from its expected pattern.
property 'recognizer'
recognizer?: string;
The name of the recognizer that defines a pattern that must not be deviated from.
property 'type'
type: 'deviation';
interface Event
interface Event {}
The events object is where you define the conditions that must be met for your skill to be notified of Echo Button input. You must define at least one event.
property 'fails'
fails?: Array<string>;
property 'maximumInvocations'
maximumInvocations?: number;
Enables you to limit the number of times that the skill is notified about the same event during the course of the Input Handler. The default value is 1. This property is mutually exclusive with triggerTimeMilliseconds.
property 'meets'
meets: Array<string>;
property 'reports'
reports?: services.gameEngine.EventReportingType;
property 'shouldEndInputHandler'
shouldEndInputHandler: boolean;
Whether the Input Handler should end after this event fires. If true, the Input Handler will stop and no further events will be sent to your skill unless you call StartInputHandler again.
property 'triggerTimeMilliseconds'
triggerTimeMilliseconds?: number;
Adds a time constraint to the event. Instead of being considered whenever a raw button event occurs, an event that has this parameter will only be considered once at triggerTimeMilliseconds after the Input Handler has started. Because a time-triggered event can only fire once, the maximumInvocations value is ignored. Omit this property entirely if you do not want to time-constrain the event.
interface InputEvent
interface InputEvent {}
property 'action'
action?: services.gameEngine.InputEventActionType;
property 'color'
color?: string;
The hexadecimal RGB values of the button LED at the time of the event.
property 'feature'
feature?: string;
For gadgets with multiple features, this is the feature that the event represents. Echo Buttons have one feature only, so this is always
press
.
property 'gadgetId'
gadgetId?: string;
The identifier of the Echo Button in question. It matches the gadgetId that you will have discovered in roll call.
property 'timestamp'
timestamp?: string;
The event's original moment of occurrence, in ISO format.
interface InputHandlerEvent
interface InputHandlerEvent {}
property 'inputEvents'
inputEvents?: Array<services.gameEngine.InputEvent>;
A chronologically ordered report of the raw Button Events that contributed to this Input Handler Event.
property 'name'
name?: string;
The name of the event as you defined it in your GameEngine.StartInputHandler directive.
interface Pattern
interface Pattern {}
An object that provides all of the events that need to occur, in a specific order, for this recognizer to be true. Omitting any parameters in this object means "match anything".
property 'action'
action?: services.gameEngine.InputEventActionType;
property 'colors'
colors?: Array<string>;
A whitelist of colors that are eligible for this match.
property 'gadgetIds'
gadgetIds?: Array<string>;
A whitelist of gadgetIds that are eligible for this match.
property 'repeat'
repeat?: number;
The number of times that the specified action must occur to be considered complete.
interface PatternRecognizer
interface PatternRecognizer {}
This recognizer is true when all of the specified events have occurred in the specified order.
property 'actions'
actions?: Array<string>;
The actions to consider in this pattern recognizer. All other actions will be ignored.
property 'anchor'
anchor?: services.gameEngine.PatternRecognizerAnchorType;
property 'fuzzy'
fuzzy?: boolean;
When true, the recognizer will ignore additional events that occur between the events specified in the pattern.
property 'gadgetIds'
gadgetIds?: Array<string>;
The gadget IDs of the Echo Buttons to consider in this pattern recognizer.
property 'pattern'
pattern?: Array<services.gameEngine.Pattern>;
An object that provides all of the events that need to occur, in a specific order, for this recognizer to be true. Omitting any parameters in this object means "match anything".
property 'type'
type: 'match';
interface ProgressRecognizer
interface ProgressRecognizer {}
This recognizer consults another recognizer for the degree of completion, and is true if that degree is above the specified threshold. The completion parameter is specified as a decimal percentage.
property 'completion'
completion?: number;
The completion threshold, as a decimal percentage, of the specified recognizer before which this recognizer becomes true.
property 'recognizer'
recognizer?: string;
The name of a recognizer for which to track the progress.
property 'type'
type: 'progress';
type EventReportingType
type EventReportingType = 'history' | 'matches';
Specifies what raw button presses to put in the inputEvents field of the event. * history - All button presses since this Input Handler was started. * matches - Just the button presses that contributed to this event (that is, were in the recognizers). To receive no raw button presses, leave this array empty or do not specify it at all.
type InputEventActionType
type InputEventActionType = 'down' | 'up';
Either "down" for a button pressed or "up" for a button released.
type PatternRecognizerAnchorType
type PatternRecognizerAnchorType = 'start' | 'end' | 'anywhere';
Where the pattern must appear in the history of this input handler. *
start
- (Default) The first event in the pattern must be the first event in the history of raw Echo Button events. *end
- The last event in the pattern must be the last event in the history of raw Echo Button events. *anywhere
- The pattern may appear anywhere in the history of raw Echo Button events.
type Recognizer
type Recognizer = | services.gameEngine.PatternRecognizer | services.gameEngine.DeviationRecognizer | services.gameEngine.ProgressRecognizer;
Recognizers are conditions that, at any moment, are either true or false, based on all the raw button events that the Input Handler has received in the time elapsed since the Input Handler session started.
namespace services.listManagement
namespace services.listManagement {}
class ListManagementServiceClient
class ListManagementServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callCreateList
callCreateList: ( createListRequest: services.listManagement.CreateListRequest) => Promise<ApiResponse>;
This API creates a custom list. The new list name must be different than any existing list name.
Parameter createListRequest
method callCreateListItem
callCreateListItem: ( listId: string, createListItemRequest: services.listManagement.CreateListItemRequest) => Promise<ApiResponse>;
This API creates an item in an active list or in a default list.
Parameter listId
The customer’s listId retrieved from a getListsMetadata call.
Parameter createListItemRequest
method callDeleteList
callDeleteList: (listId: string) => Promise<ApiResponse>;
This API deletes a customer custom list.
Parameter listId
Value of the customer’s listId retrieved from a getListsMetadata call
method callDeleteListItem
callDeleteListItem: (listId: string, itemId: string) => Promise<ApiResponse>;
This API deletes an item in the specified list.
Parameter listId
The customer’s listId is retrieved from a getListsMetadata call.
Parameter itemId
The customer’s itemId is retrieved from a GetList call.
method callGetList
callGetList: (listId: string, status: string) => Promise<ApiResponse>;
Retrieves the list metadata including the items in the list with requested status.
Parameter listId
Retrieved from a call to GetListsMetadata to specify the listId in the request path.
Parameter status
Specify the status of the list.
method callGetListItem
callGetListItem: (listId: string, itemId: string) => Promise<ApiResponse>;
This API can be used to retrieve single item with in any list by listId and itemId. This API can read list items from an archived list. Attempting to read list items from a deleted list return an ObjectNotFound 404 error.
Parameter listId
Retrieved from a call to getListsMetadata
Parameter itemId
itemId within a list is retrieved from a getList call
method callGetListsMetadata
callGetListsMetadata: () => Promise<ApiResponse>;
Retrieves the metadata for all customer lists, including the customer’s default lists.
method callUpdateList
callUpdateList: ( listId: string, updateListRequest: services.listManagement.UpdateListRequest) => Promise<ApiResponse>;
This API updates a custom list. Only the list name or state can be updated. An Alexa customer can turn an archived list into an active one.
Parameter listId
Value of the customer’s listId retrieved from a getListsMetadata call.
Parameter updateListRequest
method callUpdateListItem
callUpdateListItem: ( listId: string, itemId: string, updateListItemRequest: services.listManagement.UpdateListItemRequest) => Promise<ApiResponse>;
API used to update an item value or item status.
Parameter listId
Customer’s listId
Parameter itemId
itemId to be updated in the list
Parameter updateListItemRequest
method createList
createList: ( createListRequest: services.listManagement.CreateListRequest) => Promise<services.listManagement.AlexaListMetadata>;
This API creates a custom list. The new list name must be different than any existing list name.
Parameter createListRequest
method createListItem
createListItem: ( listId: string, createListItemRequest: services.listManagement.CreateListItemRequest) => Promise<services.listManagement.AlexaListItem>;
This API creates an item in an active list or in a default list.
Parameter listId
The customer’s listId retrieved from a getListsMetadata call.
Parameter createListItemRequest
method deleteList
deleteList: (listId: string) => Promise<void>;
This API deletes a customer custom list.
Parameter listId
Value of the customer’s listId retrieved from a getListsMetadata call
method deleteListItem
deleteListItem: (listId: string, itemId: string) => Promise<void>;
This API deletes an item in the specified list.
Parameter listId
The customer’s listId is retrieved from a getListsMetadata call.
Parameter itemId
The customer’s itemId is retrieved from a GetList call.
method getList
getList: ( listId: string, status: string) => Promise<services.listManagement.AlexaList>;
Retrieves the list metadata including the items in the list with requested status.
Parameter listId
Retrieved from a call to GetListsMetadata to specify the listId in the request path.
Parameter status
Specify the status of the list.
method getListItem
getListItem: ( listId: string, itemId: string) => Promise<services.listManagement.AlexaListItem>;
This API can be used to retrieve single item with in any list by listId and itemId. This API can read list items from an archived list. Attempting to read list items from a deleted list return an ObjectNotFound 404 error.
Parameter listId
Retrieved from a call to getListsMetadata
Parameter itemId
itemId within a list is retrieved from a getList call
method getListsMetadata
getListsMetadata: () => Promise<services.listManagement.AlexaListsMetadata>;
Retrieves the metadata for all customer lists, including the customer’s default lists.
method updateList
updateList: ( listId: string, updateListRequest: services.listManagement.UpdateListRequest) => Promise<services.listManagement.AlexaListMetadata>;
This API updates a custom list. Only the list name or state can be updated. An Alexa customer can turn an archived list into an active one.
Parameter listId
Value of the customer’s listId retrieved from a getListsMetadata call.
Parameter updateListRequest
method updateListItem
updateListItem: ( listId: string, itemId: string, updateListItemRequest: services.listManagement.UpdateListItemRequest) => Promise<services.listManagement.AlexaListItem>;
API used to update an item value or item status.
Parameter listId
Customer’s listId
Parameter itemId
itemId to be updated in the list
Parameter updateListItemRequest
interface AlexaList
interface AlexaList {}
interface AlexaListItem
interface AlexaListItem {}
property 'createdTime'
createdTime?: string;
property 'href'
href?: string;
URL to retrieve the item from.
property 'id'
id?: string;
property 'status'
status?: services.listManagement.ListItemState;
property 'updatedTime'
updatedTime?: string;
property 'value'
value?: string;
property 'version'
version?: number;
interface AlexaListMetadata
interface AlexaListMetadata {}
property 'listId'
listId?: string;
property 'name'
name?: string;
property 'state'
state?: services.listManagement.ListState;
property 'statusMap'
statusMap?: Array<services.listManagement.Status>;
property 'version'
version?: number;
interface AlexaListsMetadata
interface AlexaListsMetadata {}
property 'lists'
lists?: Array<services.listManagement.AlexaListMetadata>;
interface CreateListItemRequest
interface CreateListItemRequest {}
interface CreateListRequest
interface CreateListRequest {}
interface ForbiddenError
interface ForbiddenError {}
property 'Message'
Message?: string;
interface ListCreatedEventRequest
interface ListCreatedEventRequest {}
property 'body'
body?: services.listManagement.ListBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ListCreated';
interface ListDeletedEventRequest
interface ListDeletedEventRequest {}
property 'body'
body?: services.listManagement.ListBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ListDeleted';
interface ListItemBody
interface ListItemBody {}
property 'listId'
listId?: string;
property 'listItemIds'
listItemIds?: Array<string>;
interface ListItemsCreatedEventRequest
interface ListItemsCreatedEventRequest {}
property 'body'
body?: services.listManagement.ListItemBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ItemsCreated';
interface ListItemsDeletedEventRequest
interface ListItemsDeletedEventRequest {}
property 'body'
body?: services.listManagement.ListItemBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ItemsDeleted';
interface ListItemsUpdatedEventRequest
interface ListItemsUpdatedEventRequest {}
property 'body'
body?: services.listManagement.ListItemBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ItemsUpdated';
interface ListUpdatedEventRequest
interface ListUpdatedEventRequest {}
property 'body'
body?: services.listManagement.ListBody;
property 'eventCreationTime'
eventCreationTime?: string;
property 'eventPublishingTime'
eventPublishingTime?: string;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'AlexaHouseholdListEvent.ListUpdated';
interface Status
interface Status {}
interface UpdateListItemRequest
interface UpdateListItemRequest {}
interface UpdateListRequest
interface UpdateListRequest {}
type ListItemState
type ListItemState = 'active' | 'completed';
type ListState
type ListState = 'active' | 'archived';
namespace services.monetization
namespace services.monetization {}
class MonetizationServiceClient
class MonetizationServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callGetInSkillProduct
callGetInSkillProduct: ( acceptLanguage: string, productId: string) => Promise<ApiResponse>;
Get In-Skill Product information based on user context for the Skill.
Parameter acceptLanguage
User's locale/language in context
Parameter productId
Product Id.
method callGetInSkillProducts
callGetInSkillProducts: ( acceptLanguage: string, purchasable?: string, entitled?: string, productType?: string, nextToken?: string, maxResults?: number) => Promise<ApiResponse>;
Gets In-Skill Products based on user's context for the Skill.
Parameter acceptLanguage
User's locale/language in context
Parameter purchasable
Filter products based on whether they are purchasable by the user or not. * 'PURCHASABLE' - Products that are purchasable by the user. * 'NOT_PURCHASABLE' - Products that are not purchasable by the user.
Parameter entitled
Filter products based on whether they are entitled to the user or not. * 'ENTITLED' - Products that the user is entitled to. * 'NOT_ENTITLED' - Products that the user is not entitled to.
Parameter productType
Product type. * 'SUBSCRIPTION' - Once purchased, customers will own the content for the subscription period. * 'ENTITLEMENT' - Once purchased, customers will own the content forever. * 'CONSUMABLE' - Once purchased, customers will be entitled to the content until it is consumed. It can also be re-purchased.
Parameter nextToken
When response to this API call is truncated (that is, isTruncated response element value is true), the response also includes the nextToken element, the value of which can be used in the next request as the continuation-token to list the next set of objects. The continuation token is an opaque value that In-Skill Products API understands. Token has expiry of 24 hours.
Parameter maxResults
sets the maximum number of results returned in the response body. If you want to retrieve fewer than upper limit of 100 results, you can add this parameter to your request. maxResults should not exceed the upper limit. The response might contain fewer results than maxResults, but it will never contain more. If there are additional results that satisfy the search criteria, but these results were not returned because maxResults was exceeded, the response contains isTruncated = true.
method callGetInSkillProductsTransactions
callGetInSkillProductsTransactions: ( acceptLanguage: string, productId?: string, status?: string, fromLastModifiedTime?: string, toLastModifiedTime?: string, nextToken?: string, maxResults?: number) => Promise<ApiResponse>;
Returns transactions of all in skill products purchases of the customer
Parameter acceptLanguage
User's locale/language in context
Parameter productId
Product Id.
Parameter status
Transaction status for in skill product purchases. * 'PENDING_APPROVAL_BY_PARENT' - The transaction is pending approval from parent. * 'APPROVED_BY_PARENT' - The transaction was approved by parent and fulfilled successfully.. * 'DENIED_BY_PARENT' - The transaction was declined by parent and hence not fulfilled. * 'EXPIRED_NO_ACTION_BY_PARENT' - The transaction was expired due to no response from parent and hence not fulfilled. * 'ERROR' - The transaction was not fullfiled as there was an error while processing the transaction.
Parameter fromLastModifiedTime
Filter transactions based on last modified time stamp, FROM duration in format (UTC ISO 8601) i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
Parameter toLastModifiedTime
Filter transactions based on last modified time stamp, TO duration in format (UTC ISO 8601) i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
Parameter nextToken
When response to this API call is truncated, the response also includes the nextToken in metadata, the value of which can be used in the next request as the continuation-token to list the next set of objects. The continuation token is an opaque value that In-Skill Products API understands. Token has expiry of 24 hours.
Parameter maxResults
sets the maximum number of results returned in the response body. If you want to retrieve fewer than upper limit of 100 results, you can add this parameter to your request. maxResults should not exceed the upper limit. The response might contain fewer results than maxResults, but it will never contain more. If there are additional results that satisfy the search criteria, but these results were not returned because maxResults was exceeded, the response contains nextToken which can be used to fetch next set of result.
method callGetVoicePurchaseSetting
callGetVoicePurchaseSetting: () => Promise<ApiResponse>;
Returns whether or not voice purchasing is enabled for the skill
method getInSkillProduct
getInSkillProduct: ( acceptLanguage: string, productId: string) => Promise<services.monetization.InSkillProduct>;
Get In-Skill Product information based on user context for the Skill.
Parameter acceptLanguage
User's locale/language in context
Parameter productId
Product Id.
method getInSkillProducts
getInSkillProducts: ( acceptLanguage: string, purchasable?: string, entitled?: string, productType?: string, nextToken?: string, maxResults?: number) => Promise<services.monetization.InSkillProductsResponse>;
Gets In-Skill Products based on user's context for the Skill.
Parameter acceptLanguage
User's locale/language in context
Parameter purchasable
Filter products based on whether they are purchasable by the user or not. * 'PURCHASABLE' - Products that are purchasable by the user. * 'NOT_PURCHASABLE' - Products that are not purchasable by the user.
Parameter entitled
Filter products based on whether they are entitled to the user or not. * 'ENTITLED' - Products that the user is entitled to. * 'NOT_ENTITLED' - Products that the user is not entitled to.
Parameter productType
Product type. * 'SUBSCRIPTION' - Once purchased, customers will own the content for the subscription period. * 'ENTITLEMENT' - Once purchased, customers will own the content forever. * 'CONSUMABLE' - Once purchased, customers will be entitled to the content until it is consumed. It can also be re-purchased.
Parameter nextToken
When response to this API call is truncated (that is, isTruncated response element value is true), the response also includes the nextToken element, the value of which can be used in the next request as the continuation-token to list the next set of objects. The continuation token is an opaque value that In-Skill Products API understands. Token has expiry of 24 hours.
Parameter maxResults
sets the maximum number of results returned in the response body. If you want to retrieve fewer than upper limit of 100 results, you can add this parameter to your request. maxResults should not exceed the upper limit. The response might contain fewer results than maxResults, but it will never contain more. If there are additional results that satisfy the search criteria, but these results were not returned because maxResults was exceeded, the response contains isTruncated = true.
method getInSkillProductsTransactions
getInSkillProductsTransactions: ( acceptLanguage: string, productId?: string, status?: string, fromLastModifiedTime?: string, toLastModifiedTime?: string, nextToken?: string, maxResults?: number) => Promise<services.monetization.InSkillProductTransactionsResponse>;
Returns transactions of all in skill products purchases of the customer
Parameter acceptLanguage
User's locale/language in context
Parameter productId
Product Id.
Parameter status
Transaction status for in skill product purchases. * 'PENDING_APPROVAL_BY_PARENT' - The transaction is pending approval from parent. * 'APPROVED_BY_PARENT' - The transaction was approved by parent and fulfilled successfully.. * 'DENIED_BY_PARENT' - The transaction was declined by parent and hence not fulfilled. * 'EXPIRED_NO_ACTION_BY_PARENT' - The transaction was expired due to no response from parent and hence not fulfilled. * 'ERROR' - The transaction was not fullfiled as there was an error while processing the transaction.
Parameter fromLastModifiedTime
Filter transactions based on last modified time stamp, FROM duration in format (UTC ISO 8601) i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
Parameter toLastModifiedTime
Filter transactions based on last modified time stamp, TO duration in format (UTC ISO 8601) i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
Parameter nextToken
When response to this API call is truncated, the response also includes the nextToken in metadata, the value of which can be used in the next request as the continuation-token to list the next set of objects. The continuation token is an opaque value that In-Skill Products API understands. Token has expiry of 24 hours.
Parameter maxResults
sets the maximum number of results returned in the response body. If you want to retrieve fewer than upper limit of 100 results, you can add this parameter to your request. maxResults should not exceed the upper limit. The response might contain fewer results than maxResults, but it will never contain more. If there are additional results that satisfy the search criteria, but these results were not returned because maxResults was exceeded, the response contains nextToken which can be used to fetch next set of result.
method getVoicePurchaseSetting
getVoicePurchaseSetting: () => Promise<boolean>;
Returns whether or not voice purchasing is enabled for the skill
interface Error
interface Error {}
Describes error detail
property 'message'
message?: string;
Readable description of error
interface InSkillProduct
interface InSkillProduct {}
property 'activeEntitlementCount'
activeEntitlementCount: number;
Total active purchases of the product made by the user. Note - For ENTITLEMENT and SUBSCRIPTION product types, the value is either zero(NOT_ENTITLED) or one(ENTITLED). For CONSUMABLE product type the value is zero or more, as CONSUMABLE can be re-purchased.
property 'entitled'
entitled: services.monetization.EntitledState;
property 'entitlementReason'
entitlementReason: services.monetization.EntitlementReason;
property 'name'
name: string;
Name of the product in the language from the "Accept-Language" header
property 'productId'
productId: string;
Product Id
property 'purchasable'
purchasable: services.monetization.PurchasableState;
property 'purchaseMode'
purchaseMode: services.monetization.PurchaseMode;
property 'referenceName'
referenceName: string;
Developer selected in-skill product name. This is for developer reference only.
property 'summary'
summary: string;
Product summary in the language from the "Accept-Language" header
property 'type'
type: services.monetization.ProductType;
interface InSkillProductsResponse
interface InSkillProductsResponse {}
property 'inSkillProducts'
inSkillProducts: Array<services.monetization.InSkillProduct>;
List of In-Skill Products
property 'isTruncated'
isTruncated: boolean;
property 'nextToken'
nextToken: string;
interface InSkillProductTransactionsResponse
interface InSkillProductTransactionsResponse {}
property 'metadata'
metadata: services.monetization.Metadata;
property 'results'
results: Array<services.monetization.Transactions>;
List of transactions of in skill products purchases
interface Metadata
interface Metadata {}
property 'resultSet'
resultSet?: services.monetization.ResultSet;
interface ResultSet
interface ResultSet {}
property 'nextToken'
nextToken?: string;
interface Transactions
interface Transactions {}
property 'createdTime'
createdTime?: string;
Time at which transaction's was initiated in ISO 8601 format i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
property 'lastModifiedTime'
lastModifiedTime?: string;
Time at which transaction's status was last updated in ISO 8601 format i.e. yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
property 'productId'
productId?: string;
Product Id
property 'status'
status?: services.monetization.Status;
type EntitledState
type EntitledState = 'ENTITLED' | 'NOT_ENTITLED';
State determining if the user is entitled to the product. Note - Any new values introduced later should be treated as 'NOT_ENTITLED'. * 'ENTITLED' - The user is entitled to the product. * 'NOT_ENTITLED' - The user is not entitled to the product.
type EntitlementReason
type EntitlementReason = | 'PURCHASED' | 'NOT_PURCHASED' | 'AUTO_ENTITLED' | 'BUNDLE_ENTITLED';
Reason for the entitlement status. * 'PURCHASED' - The user is entitled to the product because they purchased it directly. * 'NOT_PURCHASED' - The user is not entitled to the product because they have not purchased it. * 'AUTO_ENTITLED' - The user is auto entitled to the product because they have subscribed to a broader service. * 'BUNDLE_ENTITLED' - The user is entitled to the product because they purchased it indirectly as part of a bundle. If the user is entitled via both PURCHASED and BUNDLE_ENTITLED, then BUNDLE_ENTITLED takes priority.
type ProductType
type ProductType = 'SUBSCRIPTION' | 'ENTITLEMENT' | 'CONSUMABLE';
Product type. * 'SUBSCRIPTION' - Once purchased, customers will own the content for the subscription period. * 'ENTITLEMENT' - Once purchased, customers will own the content forever. * 'CONSUMABLE' - Once purchased, customers will be entitled to the content until it is consumed. It can also be re-purchased.
type PurchasableState
type PurchasableState = 'PURCHASABLE' | 'NOT_PURCHASABLE';
State determining if the product is purchasable by the user. Note - Any new values introduced later should be treated as 'NOT_PURCHASABLE'. * 'PURCHASABLE' - The product is purchasable by the user. * 'NOT_PURCHASABLE' - The product is not purchasable by the user.
type PurchaseMode
type PurchaseMode = 'TEST' | 'LIVE';
Indicates if the entitlements are for TEST or LIVE purchases. * 'TEST' - test purchases made by developers or beta testers. Purchase not sent to payment processing. * 'LIVE' - purchases made by live customers. Purchase sent to payment processing.
type Status
type Status = | 'PENDING_APPROVAL_BY_PARENT' | 'APPROVED_BY_PARENT' | 'DENIED_BY_PARENT' | 'EXPIRED_NO_ACTION_BY_PARENT' | 'ERROR';
Transaction status for in skill product purchases. * 'PENDING_APPROVAL_BY_PARENT' - The transaction is pending approval from parent. * 'APPROVED_BY_PARENT' - The transaction was approved by parent and fulfilled successfully.. * 'DENIED_BY_PARENT' - The transaction was declined by parent and hence not fulfilled. * 'EXPIRED_NO_ACTION_BY_PARENT' - The transaction was expired due to no response from parent and hence not fulfilled. * 'ERROR' - The transaction was not fullfiled as there was an error while processing the transaction.
namespace services.proactiveEvents
namespace services.proactiveEvents {}
class ProactiveEventsServiceClient
class ProactiveEventsServiceClient extends BaseServiceClient {}
constructor
constructor( apiConfiguration: ApiConfiguration, authenticationConfiguration: AuthenticationConfiguration, customUserAgent?: string);
method callCreateProactiveEvent
callCreateProactiveEvent: ( createProactiveEventRequest: services.proactiveEvents.CreateProactiveEventRequest, stage: services.proactiveEvents.SkillStage) => Promise<ApiResponse>;
Create a new proactive event in live stage.
Parameter createProactiveEventRequest
Request to create a new proactive event.
method createProactiveEvent
createProactiveEvent: ( createProactiveEventRequest: services.proactiveEvents.CreateProactiveEventRequest, stage: services.proactiveEvents.SkillStage) => Promise<void>;
Create a new proactive event in live stage.
Parameter createProactiveEventRequest
Request to create a new proactive event.
interface CreateProactiveEventRequest
interface CreateProactiveEventRequest {}
property 'event'
event: services.proactiveEvents.Event;
property 'expiryTime'
expiryTime: string;
The date and time, in ISO 8601 format, when the service will automatically delete the notification if it is still in the pending state.
property 'localizedAttributes'
localizedAttributes: Array<any>;
A list of items, each of which contains the set of event attributes that requires localization support.
property 'referenceId'
referenceId: string;
Client-supplied ID for correlating the event with external entities. The allowed characters for the referenceId field are alphanumeric and ~, and the length of the referenceId field must be 1-100 characters.
property 'relevantAudience'
relevantAudience: services.proactiveEvents.RelevantAudience;
property 'timestamp'
timestamp: string;
The date and time of the event associated with this request, in ISO 8601 format.
interface Event
interface Event {}
The event data to be sent to customers, conforming to the schema associated with this event.
interface RelevantAudience
interface RelevantAudience {}
The audience for this event.
type RelevantAudienceType
type RelevantAudienceType = 'Unicast' | 'Multicast';
The audience for this event. Use Multicast to target information to all customers subscribed to that event, or use Unicast to target information containing the actual userId for individual events.
type SkillStage
type SkillStage = 'DEVELOPMENT' | 'LIVE';
Stage for creating Proactive events. Since proactive events can be created on the DEVELOPMENT and LIVE stages of the skill, this enum provides the stage values that can be used to pass to the service call.
namespace services.reminderManagement
namespace services.reminderManagement {}
class ReminderManagementServiceClient
class ReminderManagementServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callCreateReminder
callCreateReminder: ( reminderRequest: services.reminderManagement.ReminderRequest) => Promise<ApiResponse>;
This API is invoked by the skill to create a new reminder.
Parameter reminderRequest
method callDeleteReminder
callDeleteReminder: (alertToken: string) => Promise<ApiResponse>;
This API is invoked by the skill to delete a single reminder.
Parameter alertToken
method callGetReminder
callGetReminder: (alertToken: string) => Promise<ApiResponse>;
This API is invoked by the skill to get a single reminder.
Parameter alertToken
method callGetReminders
callGetReminders: () => Promise<ApiResponse>;
This API is invoked by the skill to get a all reminders created by the caller.
method callUpdateReminder
callUpdateReminder: ( alertToken: string, reminderRequest: services.reminderManagement.ReminderRequest) => Promise<ApiResponse>;
This API is invoked by the skill to update a reminder.
Parameter alertToken
Parameter reminderRequest
method createReminder
createReminder: ( reminderRequest: services.reminderManagement.ReminderRequest) => Promise<services.reminderManagement.ReminderResponse>;
This API is invoked by the skill to create a new reminder.
Parameter reminderRequest
method deleteReminder
deleteReminder: (alertToken: string) => Promise<void>;
This API is invoked by the skill to delete a single reminder.
Parameter alertToken
method getReminder
getReminder: ( alertToken: string) => Promise<services.reminderManagement.GetReminderResponse>;
This API is invoked by the skill to get a single reminder.
Parameter alertToken
method getReminders
getReminders: () => Promise<services.reminderManagement.GetRemindersResponse>;
This API is invoked by the skill to get a all reminders created by the caller.
method updateReminder
updateReminder: ( alertToken: string, reminderRequest: services.reminderManagement.ReminderRequest) => Promise<services.reminderManagement.ReminderResponse>;
This API is invoked by the skill to update a reminder.
Parameter alertToken
Parameter reminderRequest
interface AlertInfo
interface AlertInfo {}
Alert info for VUI / GUI
property 'spokenInfo'
spokenInfo?: services.reminderManagement.SpokenInfo;
interface Error
interface Error {}
interface Event
interface Event {}
property 'alertToken'
alertToken?: string;
property 'status'
status?: services.reminderManagement.Status;
interface GetReminderResponse
interface GetReminderResponse {}
Response object for get reminder request
property 'alertInfo'
alertInfo?: services.reminderManagement.AlertInfo;
property 'alertToken'
alertToken?: string;
Unique id of this reminder alert
property 'createdTime'
createdTime?: string;
Valid ISO 8601 format - Creation time of this reminder alert
property 'pushNotification'
pushNotification?: services.reminderManagement.PushNotification;
property 'status'
status?: services.reminderManagement.Status;
property 'trigger'
trigger?: services.reminderManagement.Trigger;
property 'updatedTime'
updatedTime?: string;
Valid ISO 8601 format - Last updated time of this reminder alert
property 'version'
version?: string;
Version of reminder alert
interface GetRemindersResponse
interface GetRemindersResponse {}
Response object for get reminders request
property 'alerts'
alerts?: Array<services.reminderManagement.Reminder>;
List of reminders
property 'links'
links?: string;
Link to retrieve next set of alerts if total count is greater than max results
property 'totalCount'
totalCount?: string;
Total count of reminders returned
interface PushNotification
interface PushNotification {}
Enable / disable reminders push notifications to Alexa mobile apps
property 'status'
status?: services.reminderManagement.PushNotificationStatus;
interface Recurrence
interface Recurrence {}
Recurring date/time using the RFC 5545 standard in JSON object form
property 'byDay'
byDay?: Array<services.reminderManagement.RecurrenceDay>;
property 'endDateTime'
endDateTime?: string;
Valid ISO 8601 format - optional end DateTime of recurrence
property 'freq'
freq?: services.reminderManagement.RecurrenceFreq;
property 'interval'
interval?: number;
contains a positive integer representing at which intervals the recurrence rule repeats
property 'recurrenceRules'
recurrenceRules?: Array<string>;
property 'startDateTime'
startDateTime?: string;
Valid ISO 8601 format - optional start DateTime of recurrence.
interface Reminder
interface Reminder {}
Reminder object
property 'alertInfo'
alertInfo?: services.reminderManagement.AlertInfo;
property 'alertToken'
alertToken?: string;
Unique id of this reminder alert
property 'createdTime'
createdTime?: string;
Valid ISO 8601 format - Creation time of this reminder alert
property 'pushNotification'
pushNotification?: services.reminderManagement.PushNotification;
property 'status'
status?: services.reminderManagement.Status;
property 'trigger'
trigger?: services.reminderManagement.Trigger;
property 'updatedTime'
updatedTime?: string;
Valid ISO 8601 format - Last updated time of this reminder alert
property 'version'
version?: string;
Version of reminder alert
interface ReminderCreatedEventRequest
interface ReminderCreatedEventRequest {}
property 'body'
body?: services.reminderManagement.Event;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Reminders.ReminderCreated';
interface ReminderDeletedEvent
interface ReminderDeletedEvent {}
property 'alertTokens'
alertTokens?: Array<string>;
interface ReminderDeletedEventRequest
interface ReminderDeletedEventRequest {}
property 'body'
body?: services.reminderManagement.ReminderDeletedEvent;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Reminders.ReminderDeleted';
interface ReminderRequest
interface ReminderRequest {}
Input request for creating a reminder
property 'alertInfo'
alertInfo?: services.reminderManagement.AlertInfo;
property 'pushNotification'
pushNotification?: services.reminderManagement.PushNotification;
property 'requestTime'
requestTime?: string;
Valid ISO 8601 format - Creation time of this reminder alert
property 'trigger'
trigger?: services.reminderManagement.Trigger;
interface ReminderResponse
interface ReminderResponse {}
Response object for post/put/delete reminder request
property 'alertToken'
alertToken?: string;
Unique id of this reminder alert
property 'createdTime'
createdTime?: string;
Valid ISO 8601 format - Creation time of this reminder alert
property 'href'
href?: string;
URI to retrieve the created alert
property 'status'
status?: services.reminderManagement.Status;
property 'updatedTime'
updatedTime?: string;
Valid ISO 8601 format - Last updated time of this reminder alert
property 'version'
version?: string;
Version of reminder alert
interface ReminderStartedEventRequest
interface ReminderStartedEventRequest {}
property 'body'
body?: services.reminderManagement.Event;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Reminders.ReminderStarted';
interface ReminderStatusChangedEventRequest
interface ReminderStatusChangedEventRequest {}
property 'body'
body?: services.reminderManagement.Event;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Reminders.ReminderStatusChanged';
interface ReminderUpdatedEventRequest
interface ReminderUpdatedEventRequest {}
property 'body'
body?: services.reminderManagement.Event;
property 'locale'
locale?: string;
A string indicating the user’s locale. For example: en-US. This value is only provided with certain request types.
property 'requestId'
requestId: string;
Represents the unique identifier for the specific request.
property 'timestamp'
timestamp: string;
Provides the date and time when Alexa sent the request as an ISO 8601 formatted string. Used to verify the request when hosting your skill as a web service.
property 'type'
type: 'Reminders.ReminderUpdated';
interface SpokenInfo
interface SpokenInfo {}
Parameters for VUI presentation of the reminder
property 'content'
content: Array<services.reminderManagement.SpokenText>;
interface SpokenText
interface SpokenText {}
interface Trigger
interface Trigger {}
Trigger information for Reminder
property 'offsetInSeconds'
offsetInSeconds?: number;
If reminder is set using relative time, use this field to specify the time after which reminder ll ring (in seconds)
property 'recurrence'
recurrence?: services.reminderManagement.Recurrence;
property 'scheduledTime'
scheduledTime?: string;
Valid ISO 8601 format - Intended trigger time
property 'timeZoneId'
timeZoneId?: string;
Intended reminder's timezone
property 'type'
type?: services.reminderManagement.TriggerType;
type PushNotificationStatus
type PushNotificationStatus = 'ENABLED' | 'DISABLED';
Push notification status - Enabled/Disabled
type RecurrenceDay
type RecurrenceDay = 'SU' | 'MO' | 'TU' | 'WE' | 'TH' | 'FR' | 'SA';
Day of recurrence. Deprecated.
type RecurrenceFreq
type RecurrenceFreq = 'WEEKLY' | 'DAILY';
Frequency of recurrence. Deprecated.
type Status
type Status = 'ON' | 'COMPLETED';
Status of reminder
type TriggerType
type TriggerType = 'SCHEDULED_ABSOLUTE' | 'SCHEDULED_RELATIVE';
Type of reminder - Absolute / Relative
namespace services.skillMessaging
namespace services.skillMessaging {}
class SkillMessagingServiceClient
class SkillMessagingServiceClient extends BaseServiceClient {}
constructor
constructor( apiConfiguration: ApiConfiguration, authenticationConfiguration: AuthenticationConfiguration, customUserAgent?: string);
method callSendSkillMessage
callSendSkillMessage: ( userId: string, sendSkillMessagingRequest: services.skillMessaging.SendSkillMessagingRequest) => Promise<ApiResponse>;
Send a message request to a skill for a specified user.
Parameter userId
The user Id for the specific user to send the message
Parameter sendSkillMessagingRequest
Message Request to be sent to the skill.
method sendSkillMessage
sendSkillMessage: ( userId: string, sendSkillMessagingRequest: services.skillMessaging.SendSkillMessagingRequest) => Promise<void>;
Send a message request to a skill for a specified user.
Parameter userId
The user Id for the specific user to send the message
Parameter sendSkillMessagingRequest
Message Request to be sent to the skill.
interface SendSkillMessagingRequest
interface SendSkillMessagingRequest {}
The message that needs to be sent to the skill
property 'data'
data: any;
The payload data to send with the message. The data must be in the form of JSON-formatted key-value pairs. Both keys and values must be of type String. The total size of the data cannot be greater than 6KB. For calculation purposes, this includes keys and values, the quotes that surround them, the ":" character that separates them, the commas that separate the pairs, and the opening and closing braces around the field. However, any whitespace between key/value pairs is not included in the calculation of the payload size. If the message does not include payload data, as in the case of a sync message, you can pass in an empty JSON object "{}".
property 'expiresAfterSeconds'
expiresAfterSeconds?: number;
The number of seconds that the message will be retained to retry if message delivery is not successful. Allowed values are from 60 (1 minute) to 86400 (1 day), inclusive. The default is 3600 (1 hour). Multiple retries may occur during this interval. The retry logic is exponential. The first retry executes after 30 seconds, and this time period doubles on every retry. The retries will end when the total time elapsed since the message was first sent has exceeded the value you provided for expiresAfterSeconds. Message expiry is rarely a problem if the message handler has been set up correctly. With a correct setup, you will receive the message once promptly. This mechanism for retries is provided as a safeguard in case your skill goes down during a message delivery.
namespace services.timerManagement
namespace services.timerManagement {}
class TimerManagementServiceClient
class TimerManagementServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callCreateTimer
callCreateTimer: ( timerRequest: services.timerManagement.TimerRequest) => Promise<ApiResponse>;
Create a new timer.
Parameter timerRequest
method callDeleteTimer
callDeleteTimer: (id: string) => Promise<ApiResponse>;
Delete a timer by ID.
Parameter id
method callDeleteTimers
callDeleteTimers: () => Promise<ApiResponse>;
Delete all timers created by the skill.
method callGetTimer
callGetTimer: (id: string) => Promise<ApiResponse>;
Get timer by ID.
Parameter id
method callGetTimers
callGetTimers: () => Promise<ApiResponse>;
Get all timers created by the skill.
method callPauseTimer
callPauseTimer: (id: string) => Promise<ApiResponse>;
Pause a timer.
Parameter id
method callResumeTimer
callResumeTimer: (id: string) => Promise<ApiResponse>;
Resume a timer.
Parameter id
method createTimer
createTimer: ( timerRequest: services.timerManagement.TimerRequest) => Promise<services.timerManagement.TimerResponse>;
Create a new timer.
Parameter timerRequest
method deleteTimer
deleteTimer: (id: string) => Promise<void>;
Delete a timer by ID.
Parameter id
method deleteTimers
deleteTimers: () => Promise<void>;
Delete all timers created by the skill.
method getTimer
getTimer: (id: string) => Promise<services.timerManagement.TimerResponse>;
Get timer by ID.
Parameter id
method getTimers
getTimers: () => Promise<services.timerManagement.TimersResponse>;
Get all timers created by the skill.
method pauseTimer
pauseTimer: (id: string) => Promise<void>;
Pause a timer.
Parameter id
method resumeTimer
resumeTimer: (id: string) => Promise<void>;
Resume a timer.
Parameter id
interface AnnounceOperation
interface AnnounceOperation {}
ANNOUNCE trigger behavior represents announcing a certain text that the developer wants to be read out at the expiration of the timer.
property 'textToAnnounce'
textToAnnounce: Array<services.timerManagement.TextToAnnounce>;
property 'type'
type: 'ANNOUNCE';
interface CreationBehavior
interface CreationBehavior {}
Whether the native Timer GUI is shown for 8-seconds upon Timer Creation.
property 'displayExperience'
displayExperience?: services.timerManagement.DisplayExperience;
interface DisplayExperience
interface DisplayExperience {}
Multi model presentation of the timer creation.
property 'visibility'
visibility?: services.timerManagement.Visibility;
interface Error
interface Error {}
Error object for Response.
interface LaunchTaskOperation
interface LaunchTaskOperation {}
LAUNCH_TASK trigger behavior representing launch a Skill Connection task exposed by the same skill.
property 'task'
task: services.timerManagement.Task;
property 'textToConfirm'
textToConfirm: Array<services.timerManagement.TextToConfirm>;
property 'type'
type: 'LAUNCH_TASK';
interface NotificationConfig
interface NotificationConfig {}
notification of the timer expiration.
property 'playAudible'
playAudible?: boolean;
Whether the native trigger CX is employed for this timer. By extension, this also denote whether an explicit ‘Stop’ is required.
interface NotifyOnlyOperation
interface NotifyOnlyOperation {}
NOTIFY_ONLY trigger behavior represents chime only when timer expired.
property 'type'
type: 'NOTIFY_ONLY';
interface Task
interface Task {}
Custom task passed by skill developers when the operation type is "LAUNCH_TASK"
interface TextToAnnounce
interface TextToAnnounce {}
When the operation type is "ANNOUNCE", announces a certain text that the developer wants to be read out at the expiration of the timer.
interface TextToConfirm
interface TextToConfirm {}
When the operation type is "LAUNCH_TASK", confirm with the customer at the expiration of the timer.
interface TimerRequest
interface TimerRequest {}
Input request for creating a timer.
property 'creationBehavior'
creationBehavior: services.timerManagement.CreationBehavior;
property 'duration'
duration: string;
An ISO-8601 representation of duration. E.g. for 2 minutes and 3 seconds - "PT2M3S".
property 'timerLabel'
timerLabel?: string;
Label of this timer alert, maximum of 256 characters.
property 'triggeringBehavior'
triggeringBehavior: services.timerManagement.TriggeringBehavior;
interface TimerResponse
interface TimerResponse {}
Timer object
property 'createdTime'
createdTime?: string;
Valid ISO 8601 format - Creation time of this timer alert.
property 'duration'
duration?: string;
An ISO-8601 representation of duration. E.g. for 2 minutes and 3 seconds - "PT2M3S".
property 'id'
id?: string;
Unique id of this timer alert
property 'remainingTimeWhenPaused'
remainingTimeWhenPaused?: string;
An ISO-8601 representation of duration remaining since the timer was last paused. E.g. for 1 hour, 3 minutes and 31 seconds - "PT1H3M31S".
property 'status'
status?: services.timerManagement.Status;
property 'timerLabel'
timerLabel?: string;
Label of this timer alert, maximum of 256 character.
property 'triggerTime'
triggerTime?: string;
Valid ISO 8601 format - Trigger time of this timer alert.
property 'updatedTime'
updatedTime?: string;
Valid ISO 8601 format - Last updated time of this timer alert.
interface TimersResponse
interface TimersResponse {}
Timers object with paginated list of multiple timers
property 'nextToken'
nextToken?: string;
Link to retrieve next set of timers if total count is greater than max results.
property 'timers'
timers?: Array<services.timerManagement.TimerResponse>;
List of multiple Timer objects
property 'totalCount'
totalCount?: number;
Total count of timers returned.
interface TriggeringBehavior
interface TriggeringBehavior {}
The triggering behavior upon Timer Expired.
property 'notificationConfig'
notificationConfig?: services.timerManagement.NotificationConfig;
property 'operation'
operation?: services.timerManagement.Operation;
type Operation
type Operation = | services.timerManagement.LaunchTaskOperation | services.timerManagement.AnnounceOperation | services.timerManagement.NotifyOnlyOperation;
Triggering information for Timer.
type Status
type Status = 'ON' | 'PAUSED' | 'OFF';
Status of timer
type Visibility
type Visibility = 'VISIBLE' | 'HIDDEN';
The default native Timer GUI "visible" is shown for 8-seconds upon Timer Creation. Otherwise, "hidden" will not show default native Timer GUI.
namespace services.ups
namespace services.ups {}
class UpsServiceClient
class UpsServiceClient extends BaseServiceClient {}
constructor
constructor(apiConfiguration: ApiConfiguration, customUserAgent?: string);
method callGetPersonsProfileGivenName
callGetPersonsProfileGivenName: () => Promise<ApiResponse>;
Gets the given name (first name) of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:given_name:read]
method callGetPersonsProfileMobileNumber
callGetPersonsProfileMobileNumber: () => Promise<ApiResponse>;
Gets the mobile phone number of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:mobile_number:read]
method callGetPersonsProfileName
callGetPersonsProfileName: () => Promise<ApiResponse>;
Gets the full name of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:name:read]
method callGetProfileEmail
callGetProfileEmail: () => Promise<ApiResponse>;
Gets the email address of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:email:read]
method callGetProfileGivenName
callGetProfileGivenName: () => Promise<ApiResponse>;
Gets the given name (first name) of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:given_name:read]
method callGetProfileMobileNumber
callGetProfileMobileNumber: () => Promise<ApiResponse>;
Gets the mobile phone number of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:mobile_number:read]
method callGetProfileName
callGetProfileName: () => Promise<ApiResponse>;
Gets the full name of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:name:read]
method callGetSystemDistanceUnits
callGetSystemDistanceUnits: (deviceId: string) => Promise<ApiResponse>;
Gets the distance measurement unit of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
method callGetSystemTemperatureUnit
callGetSystemTemperatureUnit: (deviceId: string) => Promise<ApiResponse>;
Gets the temperature measurement units of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
method callGetSystemTimeZone
callGetSystemTimeZone: (deviceId: string) => Promise<ApiResponse>;
Gets the time zone of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
method getPersonsProfileGivenName
getPersonsProfileGivenName: () => Promise<string>;
Gets the given name (first name) of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:given_name:read]
method getPersonsProfileMobileNumber
getPersonsProfileMobileNumber: () => Promise<services.ups.PhoneNumber>;
Gets the mobile phone number of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:mobile_number:read]
method getPersonsProfileName
getPersonsProfileName: () => Promise<string>;
Gets the full name of the recognized speaker at person-level. Requires speaker consent at person-level for scopes: [alexa::profile:name:read]
method getProfileEmail
getProfileEmail: () => Promise<string>;
Gets the email address of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:email:read]
method getProfileGivenName
getProfileGivenName: () => Promise<string>;
Gets the given name (first name) of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:given_name:read]
method getProfileMobileNumber
getProfileMobileNumber: () => Promise<services.ups.PhoneNumber>;
Gets the mobile phone number of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:mobile_number:read]
method getProfileName
getProfileName: () => Promise<string>;
Gets the full name of the customer associated with the current enablement. Requires customer consent for scopes: [alexa::profile:name:read]
method getSystemDistanceUnits
getSystemDistanceUnits: ( deviceId: string) => Promise<services.ups.DistanceUnits>;
Gets the distance measurement unit of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
method getSystemTemperatureUnit
getSystemTemperatureUnit: ( deviceId: string) => Promise<services.ups.TemperatureUnit>;
Gets the temperature measurement units of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
method getSystemTimeZone
getSystemTimeZone: (deviceId: string) => Promise<string>;
Gets the time zone of the device. Does not require explict customer consent.
Parameter deviceId
The device Id
interface Error
interface Error {}
interface PhoneNumber
interface PhoneNumber {}
property 'countryCode'
countryCode?: string;
property 'phoneNumber'
phoneNumber?: string;
type DistanceUnits
type DistanceUnits = 'METRIC' | 'IMPERIAL';
type ErrorCode
type ErrorCode = | 'INVALID_KEY' | 'INVALID_VALUE' | 'INVALID_TOKEN' | 'INVALID_URI' | 'DEVICE_UNREACHABLE' | 'UNKNOWN_ERROR';
A more precise error code. Some of these codes may not apply to some APIs. - INVALID_KEY: the setting key is not supported - INVALID_VALUE: the setting value is not valid - INVALID_TOKEN: the token is invalid - INVALID_URI: the uri is invalid - DEVICE_UNREACHABLE: the device is offline - UNKNOWN_ERROR: internal service error
type TemperatureUnit
type TemperatureUnit = 'CELSIUS' | 'FAHRENHEIT';
namespace slu
namespace slu {}
namespace slu.entityresolution
namespace slu.entityresolution {}
interface Resolution
interface Resolution {}
Represents a possible authority for entity resolution
property 'authority'
authority: string;
property 'status'
status: slu.entityresolution.Status;
property 'values'
values: Array<slu.entityresolution.ValueWrapper>;
interface Resolutions
interface Resolutions {}
Represents the results of resolving the words captured from the user's utterance. This is included for slots that use a custom slot type or a built-in slot type that you have extended with your own values. Note that resolutions is not included for built-in slot types that you have not extended.
property 'resolutionsPerAuthority'
resolutionsPerAuthority?: Array<slu.entityresolution.Resolution>;
interface Status
interface Status {}
property 'code'
code: slu.entityresolution.StatusCode;
Indication of the results of attempting to resolve the user utterance against the defined slot types.
interface Value
interface Value {}
Represents the resolved value for the slot, based on the user’s utterance and slot type definition.
interface ValueWrapper
interface ValueWrapper {}
A wrapper class for an entity resolution value used for JSON serialization.
property 'value'
value: slu.entityresolution.Value;
type StatusCode
type StatusCode = | 'ER_SUCCESS_MATCH' | 'ER_SUCCESS_NO_MATCH' | 'ER_ERROR_TIMEOUT' | 'ER_ERROR_EXCEPTION';
Indication of the results of attempting to resolve the user utterance against the defined slot types.
namespace ui
namespace ui {}
interface AskForPermissionsConsentCard
interface AskForPermissionsConsentCard {}
property 'permissions'
permissions: Array<string>;
property 'type'
type: 'AskForPermissionsConsent';
interface Image
interface Image {}
property 'largeImageUrl'
largeImageUrl?: string;
property 'smallImageUrl'
smallImageUrl?: string;
interface LinkAccountCard
interface LinkAccountCard {}
property 'type'
type: 'LinkAccount';
interface PlainTextOutputSpeech
interface PlainTextOutputSpeech {}
property 'playBehavior'
playBehavior?: ui.PlayBehavior;
property 'text'
text: string;
property 'type'
type: 'PlainText';
interface Reprompt
interface Reprompt {}
property 'directives'
directives?: Array<Directive>;
property 'outputSpeech'
outputSpeech?: ui.OutputSpeech;
interface SimpleCard
interface SimpleCard {}
interface SsmlOutputSpeech
interface SsmlOutputSpeech {}
property 'playBehavior'
playBehavior?: ui.PlayBehavior;
property 'ssml'
ssml: string;
property 'type'
type: 'SSML';
interface StandardCard
interface StandardCard {}
type Card
type Card = | ui.AskForPermissionsConsentCard | ui.LinkAccountCard | ui.StandardCard | ui.SimpleCard;
type OutputSpeech
type OutputSpeech = ui.SsmlOutputSpeech | ui.PlainTextOutputSpeech;
type PlayBehavior
type PlayBehavior = 'ENQUEUE' | 'REPLACE_ALL' | 'REPLACE_ENQUEUED';
Determines whether Alexa will queue or play this output speech immediately interrupting other speech
Package Files (1)
Dependencies (0)
No dependencies.
Dev Dependencies (4)
Peer Dependencies (0)
No peer dependencies.
Badge
To add a badge like this oneto your package's README, use the codes available below.
You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/ask-sdk-model
.
- Markdown[](https://www.jsdocs.io/package/ask-sdk-model)
- HTML<a href="https://www.jsdocs.io/package/ask-sdk-model"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>
- Updated .
Package analyzed in 17031 ms. - Missing or incorrect documentation? Open an issue for this package.