Python (SDK)
import latitudesh_python_sdk
from latitudesh_python_sdk import Latitudesh
import os
with Latitudesh(
bearer=os.getenv("LATITUDESH_BEARER", ""),
) as latitudesh:
res = latitudesh.elastic_ips.create_elastic_ip(data={
"type": latitudesh_python_sdk.CreateElasticIPType.ELASTIC_IPS,
"attributes": {
"project_id": "proj_AoW6vRnwkvLn0",
"server_id": "sv_2GmAlJ6BXlK1a",
},
})
# Handle response
print(res)package main
import(
"context"
"os"
latitudeshgosdk "github.com/latitudesh/latitudesh-go-sdk"
"github.com/latitudesh/latitudesh-go-sdk/models/components"
"log"
)
func main() {
ctx := context.Background()
s := latitudeshgosdk.New(
latitudeshgosdk.WithSecurity(os.Getenv("LATITUDESH_BEARER")),
)
res, err := s.ElasticIps.CreateElasticIP(ctx, components.CreateElasticIP{
Data: components.CreateElasticIPData{
Type: components.CreateElasticIPTypeElasticIps,
Attributes: components.CreateElasticIPAttributes{
ProjectID: "proj_AoW6vRnwkvLn0",
ServerID: "sv_2GmAlJ6BXlK1a",
},
},
})
if err != nil {
log.Fatal(err)
}
if res.ElasticIP != nil {
// handle response
}
}import { Latitudesh } from "latitudesh-typescript-sdk";
const latitudesh = new Latitudesh({
bearer: process.env["LATITUDESH_BEARER"] ?? "",
});
async function run() {
const result = await latitudesh.elasticIps.createElasticIp({
data: {
type: "elastic_ips",
attributes: {
projectId: "proj_AoW6vRnwkvLn0",
serverId: "sv_2GmAlJ6BXlK1a",
},
},
});
console.log(result);
}
run();curl --request POST \
--url https://api.latitude.sh/elastic_ips \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"data": {
"type": "elastic_ips",
"attributes": {
"project_id": "proj_AoW6vRnwkvLn0",
"server_id": "sv_2GmAlJ6BXlK1a"
}
}
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
data: {
type: 'elastic_ips',
attributes: {project_id: 'proj_AoW6vRnwkvLn0', server_id: 'sv_2GmAlJ6BXlK1a'}
}
})
};
fetch('https://api.latitude.sh/elastic_ips', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.latitude.sh/elastic_ips",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
'type' => 'elastic_ips',
'attributes' => [
'project_id' => 'proj_AoW6vRnwkvLn0',
'server_id' => 'sv_2GmAlJ6BXlK1a'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.latitude.sh/elastic_ips")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {\n \"type\": \"elastic_ips\",\n \"attributes\": {\n \"project_id\": \"proj_AoW6vRnwkvLn0\",\n \"server_id\": \"sv_2GmAlJ6BXlK1a\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.latitude.sh/elastic_ips")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {\n \"type\": \"elastic_ips\",\n \"attributes\": {\n \"project_id\": \"proj_AoW6vRnwkvLn0\",\n \"server_id\": \"sv_2GmAlJ6BXlK1a\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": null,
"type": "elastic_ips",
"attributes": {
"address": "177.54.156.7",
"status": "configuring",
"project": {
"id": "proj_AoW6vRnwkvLn0",
"name": "My Project",
"slug": "my-project"
}
}
}
}Elastic Ips
Create an Elastic IP
Creates a new Elastic IP and assigns it to the specified server. The IP is provisioned asynchronously—the response will show status configuring and the id will be null until provisioning completes. Currently only IPv4 /32 addresses in routed mode are supported.
POST
/
elastic_ips
Python (SDK)
import latitudesh_python_sdk
from latitudesh_python_sdk import Latitudesh
import os
with Latitudesh(
bearer=os.getenv("LATITUDESH_BEARER", ""),
) as latitudesh:
res = latitudesh.elastic_ips.create_elastic_ip(data={
"type": latitudesh_python_sdk.CreateElasticIPType.ELASTIC_IPS,
"attributes": {
"project_id": "proj_AoW6vRnwkvLn0",
"server_id": "sv_2GmAlJ6BXlK1a",
},
})
# Handle response
print(res)package main
import(
"context"
"os"
latitudeshgosdk "github.com/latitudesh/latitudesh-go-sdk"
"github.com/latitudesh/latitudesh-go-sdk/models/components"
"log"
)
func main() {
ctx := context.Background()
s := latitudeshgosdk.New(
latitudeshgosdk.WithSecurity(os.Getenv("LATITUDESH_BEARER")),
)
res, err := s.ElasticIps.CreateElasticIP(ctx, components.CreateElasticIP{
Data: components.CreateElasticIPData{
Type: components.CreateElasticIPTypeElasticIps,
Attributes: components.CreateElasticIPAttributes{
ProjectID: "proj_AoW6vRnwkvLn0",
ServerID: "sv_2GmAlJ6BXlK1a",
},
},
})
if err != nil {
log.Fatal(err)
}
if res.ElasticIP != nil {
// handle response
}
}import { Latitudesh } from "latitudesh-typescript-sdk";
const latitudesh = new Latitudesh({
bearer: process.env["LATITUDESH_BEARER"] ?? "",
});
async function run() {
const result = await latitudesh.elasticIps.createElasticIp({
data: {
type: "elastic_ips",
attributes: {
projectId: "proj_AoW6vRnwkvLn0",
serverId: "sv_2GmAlJ6BXlK1a",
},
},
});
console.log(result);
}
run();curl --request POST \
--url https://api.latitude.sh/elastic_ips \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"data": {
"type": "elastic_ips",
"attributes": {
"project_id": "proj_AoW6vRnwkvLn0",
"server_id": "sv_2GmAlJ6BXlK1a"
}
}
}
'const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
data: {
type: 'elastic_ips',
attributes: {project_id: 'proj_AoW6vRnwkvLn0', server_id: 'sv_2GmAlJ6BXlK1a'}
}
})
};
fetch('https://api.latitude.sh/elastic_ips', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.latitude.sh/elastic_ips",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'data' => [
'type' => 'elastic_ips',
'attributes' => [
'project_id' => 'proj_AoW6vRnwkvLn0',
'server_id' => 'sv_2GmAlJ6BXlK1a'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.latitude.sh/elastic_ips")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"data\": {\n \"type\": \"elastic_ips\",\n \"attributes\": {\n \"project_id\": \"proj_AoW6vRnwkvLn0\",\n \"server_id\": \"sv_2GmAlJ6BXlK1a\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.latitude.sh/elastic_ips")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data\": {\n \"type\": \"elastic_ips\",\n \"attributes\": {\n \"project_id\": \"proj_AoW6vRnwkvLn0\",\n \"server_id\": \"sv_2GmAlJ6BXlK1a\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": null,
"type": "elastic_ips",
"attributes": {
"address": "177.54.156.7",
"status": "configuring",
"project": {
"id": "proj_AoW6vRnwkvLn0",
"name": "My Project",
"slug": "my-project"
}
}
}
}Was this page helpful?
⌘I