AWS Server Migration Service
amazonaws · Cloud
Product update We recommend Amazon Web Services Application Migration Service (Amazon Web Services MGN) as the primary migration service for lift-and-shift migrations. If Amazon Web Services MGN is unavailable in a specific Amazon Web Services Region, you can use the Server Migration Service APIs through March 2023. Server Migration Service (Server Migration Service) makes it easi
Authentication
Sample Requests
Describes the connectors registered with the Server Migration Service.
Hover any highlighted part to learn what it does
| X-Amz-Target | AWSServerMigrationService_V2016_10_24.GetConnectors |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors?nextToken=example&maxResults=example" \ -H "X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetConnectors"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "AWSServerMigrationService_V2016_10_24.GetConnectors"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'AWSServerMigrationService_V2016_10_24.GetConnectors'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "AWSServerMigrationService_V2016_10_24.GetConnectors")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "AWSServerMigrationService_V2016_10_24.GetConnectors"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetConnectors?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetConnectors"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Describes the specified replication job or all of your replication jobs.
Hover any highlighted part to learn what it does
| X-Amz-Target | AWSServerMigrationService_V2016_10_24.GetReplicationJobs |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs?nextToken=example&maxResults=example" \ -H "X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetReplicationJobs"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "AWSServerMigrationService_V2016_10_24.GetReplicationJobs"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'AWSServerMigrationService_V2016_10_24.GetReplicationJobs'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "AWSServerMigrationService_V2016_10_24.GetReplicationJobs")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "AWSServerMigrationService_V2016_10_24.GetReplicationJobs"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationJobs?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetReplicationJobs"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Describes the replication runs for the specified replication job.
Hover any highlighted part to learn what it does
| X-Amz-Target | AWSServerMigrationService_V2016_10_24.GetReplicationRuns |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns?nextToken=example&maxResults=example" \ -H "X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetReplicationRuns"
import requests
params = {
"nextToken": "example",
"maxResults": "example"
}
headers = {
"X-Amz-Target": "AWSServerMigrationService_V2016_10_24.GetReplicationRuns"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns');
url.searchParams.set('nextToken', 'example');
url.searchParams.set('maxResults', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'AWSServerMigrationService_V2016_10_24.GetReplicationRuns'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns")
q := baseURL.Query()
q.Set("nextToken", "example")
q.Set("maxResults", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "AWSServerMigrationService_V2016_10_24.GetReplicationRuns")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns")
uri.query = URI.encode_www_form({
"nextToken" => "example",
"maxResults" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "AWSServerMigrationService_V2016_10_24.GetReplicationRuns"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/sms/2016-10-24/#X-Amz-Target=AWSServerMigrationService_V2016_10_24.GetReplicationRuns?" . http_build_query([
"nextToken" => "example",
"maxResults" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: AWSServerMigrationService_V2016_10_24.GetReplicationRuns"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with AWS Server Migration Service?
AWS Server Migration Service is a Cloud API. Developers commonly use cloud APIs for:
- provisioning and managing cloud infrastructure
- automating deployments and container orchestration
- monitoring uptime and performance metrics
- managing storage buckets and databases
- setting up auto-scaling and load balancing
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. AWS Server Migration Service is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?