curl --request POST \
--url https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"target_type": "floating_ip"
}
'import requests
url = "https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert"
payload = { "target_type": "floating_ip" }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({target_type: 'floating_ip'})
};
fetch('https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert', 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.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert",
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([
'target_type' => 'floating_ip'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert"
payload := strings.NewReader("{\n \"target_type\": \"floating_ip\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"target_type\": \"floating_ip\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert")
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 \"target_type\": \"floating_ip\"\n}"
response = http.request(request)
puts response.read_body{
"tasks": [
"d478ae29-dedc-4869-82f0-96104425f565"
]
}Convert reserved fixed IP
Convert an unassigned reserved fixed IP to another resource type. The reserved fixed IP must not be attached to any device (status must be AVAILABLE). Only reserved fixed IPs on external networks can be converted.
Note: In rare cases, if the conversion fails due to concurrent network operations, the original IP address may be lost and a new one will need to be created.
curl --request POST \
--url https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"target_type": "floating_ip"
}
'import requests
url = "https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert"
payload = { "target_type": "floating_ip" }
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({target_type: 'floating_ip'})
};
fetch('https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert', 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.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert",
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([
'target_type' => 'floating_ip'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert"
payload := strings.NewReader("{\n \"target_type\": \"floating_ip\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"target_type\": \"floating_ip\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v1/reserved_fixed_ips/{project_id}/{region_id}/{port_id}/convert")
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 \"target_type\": \"floating_ip\"\n}"
response = http.request(request)
puts response.read_body{
"tasks": [
"d478ae29-dedc-4869-82f0-96104425f565"
]
}Authorizations
API key for authentication. Make sure to include the word apikey, followed by a single space and then your token.
Example: apikey 1234_abcdef
Path Parameters
Project ID
1
Region ID
4
Port ID
"ac177f1f-eb04-42c4-9864-e7d6486813af"
Body
Serializer for reserved fixed IP conversion request.
Target type for conversion
floating_ip "floating_ip"
Response
OK
List of task IDs representing asynchronous operations. Use these IDs to monitor operation progress:
GET /v1/tasks/{task_id}- Check individual task status and details Poll task status until completion (FINISHED/ERROR) before proceeding with dependent operations.
["d478ae29-dedc-4869-82f0-96104425f565"]
Was this page helpful?