Amazon Lightsail
amazonaws · Cloud
Amazon Lightsail is the easiest way to get started with Amazon Web Services (Amazon Web Services) for developers who need to build websites or web applications. It includes everything you need to launch your project quickly - instances (virtual private servers), container services, storage buckets, managed databases, SSD-based block storage, static IP addresses, load balancers, content delivery network (CDN) distributions, DNS management of registered domains, and resource snapshots (backups)
Authentication
Sample Requests
Allocates a static IP address.
Hover any highlighted part to learn what it does
| X-Amz-Target | Lightsail_20161128.AllocateStaticIp |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp" \ -H "X-Amz-Target: Lightsail_20161128.AllocateStaticIp"
import requests
headers = {
"X-Amz-Target": "Lightsail_20161128.AllocateStaticIp"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'Lightsail_20161128.AllocateStaticIp'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "Lightsail_20161128.AllocateStaticIp")
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/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "Lightsail_20161128.AllocateStaticIp"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AllocateStaticIp";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: Lightsail_20161128.AllocateStaticIp"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Attaches an SSL/TLS certificate to your Amazon Lightsail content delivery network (CDN) distribution. After the certificate is attached, your distribution accepts HTTPS traffic for all of the domains that are associated with the certificate. Use the CreateCertificate ac
Hover any highlighted part to learn what it does
| X-Amz-Target | Lightsail_20161128.AttachCertificateToDistribution |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution" \ -H "X-Amz-Target: Lightsail_20161128.AttachCertificateToDistribution"
import requests
headers = {
"X-Amz-Target": "Lightsail_20161128.AttachCertificateToDistribution"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'Lightsail_20161128.AttachCertificateToDistribution'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "Lightsail_20161128.AttachCertificateToDistribution")
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/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "Lightsail_20161128.AttachCertificateToDistribution"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachCertificateToDistribution";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: Lightsail_20161128.AttachCertificateToDistribution"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Attaches a block storage disk to a running or stopped Lightsail instance and exposes it to the instance with the specified disk name. The attach disk operation supports tag-based access control via resource tags applied to the resource identified by disk name . For
Hover any highlighted part to learn what it does
| X-Amz-Target | Lightsail_20161128.AttachDisk |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk" \ -H "X-Amz-Target: Lightsail_20161128.AttachDisk"
import requests
headers = {
"X-Amz-Target": "Lightsail_20161128.AttachDisk"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'Lightsail_20161128.AttachDisk'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "Lightsail_20161128.AttachDisk")
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/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "Lightsail_20161128.AttachDisk"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/lightsail/2016-11-28/#X-Amz-Target=Lightsail_20161128.AttachDisk";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: Lightsail_20161128.AttachDisk"
]),
]];
$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 Amazon Lightsail?
Amazon Lightsail 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. Amazon Lightsail 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?