AWS Server Migration Service
API Reference (API Version 2016-10-24)

CreateApp

Creates an application. An application consists of one or more server groups. Each server group contain one or more servers.

Request Syntax

{ "clientToken": "string", "description": "string", "name": "string", "roleName": "string", "serverGroups": [ { "name": "string", "serverGroupId": "string", "serverList": [ { "replicationJobId": "string", "replicationJobTerminated": boolean, "serverId": "string", "serverType": "string", "vmServer": { "vmManagerName": "string", "vmManagerType": "string", "vmName": "string", "vmPath": "string", "vmServerAddress": { "vmId": "string", "vmManagerId": "string" } } } ] } ], "tags": [ { "key": "string", "value": "string" } ] }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

clientToken

A unique, case-sensitive identifier that you provide to ensure the idempotency of application creation.

Type: String

Required: No

description

Description of the new application

Type: String

Required: No

name

Name of the new application.

Type: String

Required: No

roleName

Name of the service role in the customer's account to be used by AWS SMS.

Type: String

Required: No

serverGroups

List of server groups to include in the application.

Type: Array of ServerGroup objects

Required: No

tags

List of tags to be associated with the application.

Type: Array of Tag objects

Required: No

Response Syntax

{ "appSummary": { "appId": "string", "creationTime": number, "description": "string", "lastModified": number, "latestReplicationTime": number, "launchDetails": { "latestLaunchTime": number, "stackId": "string", "stackName": "string" }, "launchStatus": "string", "launchStatusMessage": "string", "name": "string", "replicationStatus": "string", "replicationStatusMessage": "string", "roleName": "string", "status": "string", "statusMessage": "string", "totalServerGroups": number, "totalServers": number }, "serverGroups": [ { "name": "string", "serverGroupId": "string", "serverList": [ { "replicationJobId": "string", "replicationJobTerminated": boolean, "serverId": "string", "serverType": "string", "vmServer": { "vmManagerName": "string", "vmManagerType": "string", "vmName": "string", "vmPath": "string", "vmServerAddress": { "vmId": "string", "vmManagerId": "string" } } } ] } ], "tags": [ { "key": "string", "value": "string" } ] }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

appSummary

Summary description of the application.

Type: AppSummary object

serverGroups

List of server groups included in the application.

Type: Array of ServerGroup objects

tags

List of tags associated with the application.

Type: Array of Tag objects

Errors

For information about the errors that are common to all actions, see Common Errors.

InternalError

An internal error occurred.

HTTP Status Code: 500

InvalidParameterException

A specified parameter is not valid.

HTTP Status Code: 400

MissingRequiredParameterException

A required parameter is missing.

HTTP Status Code: 400

OperationNotPermittedException

This operation is not allowed.

HTTP Status Code: 400

UnauthorizedOperationException

You lack permissions needed to perform this operation. Check your IAM policies, and ensure that you are using the correct access keys.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: