服务器迁移中心SMC采用RPC风格API,支持GET和POST请求方式。本文介绍通过API URL调用SMC API的方法,一次API请求中,会涉及签名、参数设定以及身份验证等设置。

调用工具

您可以通过OpenAPI Explorer、阿里云CLI、Cloud Shell、SDK等开发工具调试、调用阿里云API。
  • OpenAPI Explorer

    OpenAPI Explorer是一款可视化的网页版API调用工具。您可以在OpenAPI Explorer中调用阿里云开放的所有API,发起API请求并查看返回结果。更多详情,请参见阿里云OpenAPI Explorer使用指南

  • 阿里云CLI

    阿里云命令行工具(Alibaba Cloud Command Line Interface)是在阿里云GO SDK之上构建的开源工具。您可以通过阿里云CLI,管理您的阿里云资源。更多详情,请参见阿里云CLI使用指南

  • Cloud Shell

    云命令行(Cloud Shell)是网页版命令行工具。您可以在任意浏览器上运行云命令行管理阿里云资源。更多详情,请参见阿里云Cloud Shell使用指南

  • SMC SDK

    您可以在Github Repo Alibaba Cloud获取SMC SDK。

请求结构

本节介绍HTTP/HTTPS调用场景中,API请求的结构组成。以下是GET请求的URL格式:
http(s)://Endpoint/?Action=xx&Parameters
  • Endpoint:调用的云服务的接入点,如smc.aliyuncs.com
  • Action:当前请求需要执行的操作,如使用CreateReplicationJob创建一个迁移任务。
  • Parameters:代指请求参数,由公共请求参数和API自定义参数组成,参数之间使用&分隔。
以下是CreateReplicationJob接口的请求示例:
https://smc.aliyuncs.com/?Action=CreateReplicationJob
&SystemDiskSize=125
&公共请求参数

接入地址

服务器迁移中心SMC API的服务接入地址为:smc.aliyuncs.com。

公共参数

通过GET请求调用服务器迁移中心SMC API的公共参数,如下表所示。
名称 类型 是否必选 示例值 描述
Action String CreateReplicationJob API的名称。取值请参见API 概览
AccessKeyId String LTAIp4********fjx 访问密钥ID。更多详情,请参见创建AccessKey
Signature String OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D 您的签名。RPC风格API的签名机制,请参见签名机制
SignatureMethod String HMAC-SHA1 签名方式。取值:HMAC-SHA1。
SignatureVersion String 1.0 签名算法版本。取值:1.0。
SignatureNonce String 3ee8c1b8-****-44af-****-4e0ad82fd6cf 签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数。
Timestamp String 2018-01-01T12:00:00Z 请求的时间戳。按照ISO8601标准表示,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ
Version String 2014-08-28 API的版本号,格式为YYYY-MM-DD。取值:2019-06-01。
Format String json 返回参数的语言类型。取值:json | xml。

默认值:json。

RAM鉴权

部分SMC API的鉴权规则如下表所示。资源ARN格式说明,请参见RAM基本概念
Action 资源ARN取值
DeleteSourceServer acs:smc:$regionid:$accountid:sourceServer/$sourceId
DescribeSourceServers acs:smc:$regionid:$accountid:sourceServer/*
ModifySourceServerAttribute acs:smc:$regionid:$accountid:sourceServer/$sourceId
CreateReplicationJob
  • acs:smc:$regionid:$accountid:sourceServer/$sourceId
  • acs:smc:$regionid:$accountid:replicationJob/*
DeleteReplicationJob acs:smc:$regionid:$accountid:replicationJob/$jobId
DescribeReplicationJobs acs:smc:$regionid:$accountid:replicationJob/*
ModifyReplicationJobAttribute acs:smc:$regionid:$accountid:replicationJob/$jobId
StartReplicationJob acs:smc:$regionid:$accountid:replicationJob/$jobId
StopReplicationJob acs:smc:$regionid:$accountid:replicationJob/$jobId