> alicloud-cdn
Manage Alibaba Cloud CDN using the @alicloud/cdn20180510 TypeScript SDK. Use when working with CDN domain acceleration, domain configuration, SSL certificates, cache refresh/prefetch, real-time monitoring, traffic analysis, log management, usage/billing, IP tools, Function Compute triggers, delivery tasks, and resource tagging. Covers all 168 APIs of the CDN 20180510 version.
curl "https://skillshub.wtf/agents-infrastructure/alicloud-agent-skills/alicloud-cdn?format=md"Alibaba Cloud CDN Skill
Manage CDN content delivery network via the @alicloud/cdn20180510 TypeScript SDK.
Prerequisites
npm install @alicloud/cdn20180510 @alicloud/openapi-core @darabonba/typescript
export ALIBABA_CLOUD_ACCESS_KEY_ID="<your-key-id>"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="<your-key-secret>"
See scripts/setup_client.ts for a reusable client factory, and references/quickstart.md for full setup including endpoints, domain types, source types, function configurations, and time formats.
Client Initialization
import Client from '@alicloud/cdn20180510';
import { Config } from '@alicloud/openapi-core';
const client = new Client(new Config({
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET,
endpoint: 'cdn.aliyuncs.com',
}));
CDN is a global service — use the single endpoint cdn.aliyuncs.com for all operations.
API Overview (168 APIs in 11 Domains)
| Domain | APIs | Key Operations | Reference |
|---|---|---|---|
| Domain Management | 31 | addCdnDomain, describeUserDomains, deleteCdnDomain | references/domain.md |
| Domain Configuration | 20 | batchSetCdnDomainConfig, setCdnDomainStagingConfig | references/domain-config.md |
| SSL Certificate | 9 | setCdnDomainSSLCertificate, describeCdnCertificateList | references/certificate.md |
| Cache Refresh & Prefetch | 7 | refreshObjectCaches, pushObjectCache, describeRefreshTasks | references/cache-refresh.md |
| Monitoring & Statistics | 44 | describeDomainRealTimeQpsData, describeDomainBpsData | references/monitoring.md |
| Log Management | 15 | describeCdnDomainLogs, createRealTimeLogDelivery | references/log.md |
| Usage & Billing | 15 | describeDomainUsageData, describeCdnUserBillHistory | references/usage.md |
| IP & Network Tools | 10 | describeIpInfo, setCdnFullDomainsBlockIP | references/ip-tool.md |
| Function Compute Trigger | 5 | addFCTrigger, updateFCTrigger, describeFCTrigger | references/fc-trigger.md |
| Deliver & Report Tasks | 8 | createCdnDeliverTask, describeCdnReport | references/deliver-task.md |
| Tag & Resource | 4 | tagResources, untagResources, listTagResources | references/tag-resource.md |
Core Patterns
RPC-Style (Global Service)
CDN APIs do not require regionId. Parameters are flat fields in a Request object:
import * as models from '@alicloud/cdn20180510/dist/models';
const { body } = await client.describeUserDomains(new models.DescribeUserDomainsRequest({
pageSize: 50,
pageNumber: 1,
}));
Domain Configuration via JSON Functions
Use batchSetCdnDomainConfig with a JSON functions array to configure domain features:
await client.batchSetCdnDomainConfig(new models.BatchSetCdnDomainConfigRequest({
domainNames: 'cdn.example.com',
functions: JSON.stringify([
{
functionName: 'filetype_based_ttl_set',
functionArgs: [
{ argName: 'ttl', argValue: '2592000' },
{ argName: 'file_type', argValue: 'jpg,png,gif,css,js' },
{ argName: 'weight', argValue: '1' },
],
},
]),
}));
Page-Based Pagination
let pageNumber = 1;
let all: any[] = [];
while (true) {
const { body } = await client.describeUserDomains(new models.DescribeUserDomainsRequest({
pageSize: 50, pageNumber,
}));
all.push(...(body.domains?.pageData || []));
if (all.length >= (body.totalCount || 0)) break;
pageNumber++;
}
Time Range for Monitoring
Most monitoring APIs accept ISO 8601 time ranges:
const { body } = await client.describeDomainRealTimeQpsData(
new models.DescribeDomainRealTimeQpsDataRequest({
domainName: 'cdn.example.com',
startTime: '2026-02-15T00:00:00Z',
endTime: '2026-02-16T00:00:00Z',
})
);
Error Handling
try {
await client.addCdnDomain(request);
} catch (err: any) {
console.error(`Code: ${err.code}, Message: ${err.message}, RequestId: ${err.data?.RequestId}`);
}
Common Workflows
1. Add and Configure CDN Domain
addCdnDomain → verifyDomainOwner → setCdnDomainSSLCertificate → batchSetCdnDomainConfig
2. SSL Certificate Management
describeCdnCertificateList → setCdnDomainSSLCertificate → describeCdnDomainCertificateInfo
3. Cache Refresh & Prefetch
refreshObjectCaches (URL/Dir) → pushObjectCache → describeRefreshTasks → describeRefreshQuota
4. Real-Time Monitoring
describeDomainRealTimeQpsData → describeDomainRealTimeBpsData → describeDomainRealTimeHttpCodeData
5. Traffic Analysis
describeDomainTopUrlVisit → describeDomainTopClientIpVisit → describeDomainISPData → describeDomainRegionData
6. Log Management
describeCdnDomainLogs → createRealTimeLogDelivery → describeRealtimeDeliveryAcc
7. Usage & Billing
describeCdnUserBillType → describeDomainUsageData → createUsageDetailDataExportTask
8. IP Verification & Blocking
describeIpInfo → setCdnFullDomainsBlockIP → describeCdnFullDomainsBlockIPHistory
See references/workflows.md for detailed workflow examples with full code.
API Reference Quick Index
Load the corresponding reference file for parameter details:
- Domain CRUD/batch/verification/ownership:
references/domain.md - Function configs/staging/gray deployment:
references/domain-config.md - SSL/TLS certificate binding:
references/certificate.md - URL/directory refresh and prefetch:
references/cache-refresh.md - Real-time QPS/BPS/hit rate/HTTP codes/traffic:
references/monitoring.md - Access logs/real-time log delivery:
references/log.md - Usage data/billing/quota/export:
references/usage.md - IP check/VIP query/IP blocking:
references/ip-tool.md - Edge function triggers:
references/fc-trigger.md - Scheduled delivery/report tasks:
references/deliver-task.md - Resource tagging:
references/tag-resource.md
Each reference file contains per-API documentation with method signatures and parameter tables.
Code Examples
See scripts/examples.ts for ready-to-use code covering:
- Domain listing, adding, and deletion
- Domain configuration (HTTPS force, cache TTL)
- SSL certificate binding
- Cache refresh (URL/directory) and prefetch
- Real-time QPS and bandwidth monitoring
- Top URL analysis
- Log download
- IP verification
- Usage data queries
- Resource tagging
> related_skills --same-repo
> alicloud-vpc
Manage Alibaba Cloud VPC networking using the @alicloud/vpc20160428 TypeScript SDK. Use when working with virtual private clouds, VSwitches, route tables, EIPs, NAT gateways, VPN gateways, Express Connect, BGP routing, network ACLs, flow logs, traffic mirroring, IPv6, HAVIP, gateway endpoints, and resource tagging. Covers all 396 APIs of the VPC 20160428 version.
> alicloud-redis
Manage Alibaba Cloud Redis (Tair / R-KVStore) using the @alicloud/r-kvstore20150101 TypeScript SDK. Use when working with Redis or Tair instances, accounts, backups, security (whitelist/SSL/TDE/audit), parameters, monitoring, cluster scaling, direct connection, Tair Custom instances, and resource tagging. Covers all 157 APIs of the R-KVStore 20150101 version.
> alicloud-rds
Manage Alibaba Cloud RDS using the @alicloud/rds20140815 TypeScript SDK. Use when working with relational database instances (MySQL, PostgreSQL, SQL Server, MariaDB), accounts, databases, backups, security, monitoring, parameters, read-only instances, database proxy, migration, cross-region DR, PostgreSQL extensions, RDS Custom instances, and resource tagging. Covers all 398 APIs of the RDS 20140815 version.
> alicloud-ram
alicloud-ram skill from agents-infrastructure/alicloud-agent-skills