ASK SMAPI Client for Metrics v2
npm install ask-metrics-v2> [!WARNING]
> This is a beta release of the ASK Metrics v2 API. The API and documentation are subject to change.
ASK Api reference: https://developer.amazon.com/en-US/docs/alexa/smapi/metrics-api.html
bash
npm install --save ask-metrics-v2
`$3
For refresh token, see ASK Smapi SDK Documentation
Edxample
`typescript
// test.ts
import {
RefreshTokenConfig,
createClient,
AggregationPeriod,
Metrics,
MetricsV2RequestOptions,
ListMetricsV2RequestOptions,
} from "ask-metrics-v2";// Skill ID to fetch metrics for
const skillId = 'amzn1.ask.skill.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx';
// Refresh Token to authenticate with
// See ASK Smapi SDK documentation for more information
const refreshTokenConfig: RefreshTokenConfig = {
clientId
clientSecter,
refreshToken,
};
void main() {
// Setup client
const client = createClient(refreshTokenConfig);
// Create request options
const requestListOptions: ListMetricsV2RequestOptions = {
metricNamespace: Metrics.Custom.namespace,
};
// Get list metrics
const listMetrics = await client.getListMetricsV2(requestListOptions);
// Print list metrics
console.log('List Metrics:');
console.log(JSON.stringify(listMetrics, null, 2));
// Create request options
const requestOptions: MetricsV2RequestOptions = {
startTime: Date.now()-100060602430, // 30 days before
endTime: Date.now(),
metricQueries: [
{
id: "m2",
name: Metrics.Custom.CUSTOMERS,
metricNamespace: Metrics.Custom.namespace,
aggregationPeriod: AggregationPeriod.BY_DAY,
}
]
};
// Get metrics
const metrics = await client.getSkillMetricsV2(skillId, requestOptions);
// Print metrics
console.log("Metrics:");
console.log(JSON.stringify(metrics, null, 2));
}
main();
`````