AWS Direct Connect
amazonaws · Cloud
Direct Connect links your internal network to an Direct Connect location over a standard Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an Direct Connect router. With this connection in place, you can create virtual interfaces directly to the Amazon Web Services Cloud (for example, to Amazon EC2 and Amazon S3) and to Amazon VPC, bypassing Internet service providers in your network path. A connection provides access to all Amazon Web Services Regions ex
Authentication
Sample Requests
Accepts a proposal request to attach a virtual private gateway or transit gateway to a Direct Connect gateway.
Hover any highlighted part to learn what it does
| X-Amz-Target | OvertureService.AcceptDirectConnectGatewayAssociationProposal |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal" \ -H "X-Amz-Target: OvertureService.AcceptDirectConnectGatewayAssociationProposal"
import requests
headers = {
"X-Amz-Target": "OvertureService.AcceptDirectConnectGatewayAssociationProposal"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'OvertureService.AcceptDirectConnectGatewayAssociationProposal'
},
});
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "OvertureService.AcceptDirectConnectGatewayAssociationProposal")
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "OvertureService.AcceptDirectConnectGatewayAssociationProposal"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AcceptDirectConnectGatewayAssociationProposal";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: OvertureService.AcceptDirectConnectGatewayAssociationProposal"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Creates a hosted connection on the specified interconnect or a link aggregation group (LAG) of interconnects. Allocates a VLAN number and a specified amount of capacity (bandwidth) for use by a hosted connection on the specified interconnect or LAG of interconnects. Amazon Web Services pol
Hover any highlighted part to learn what it does
| X-Amz-Target | OvertureService.AllocateHostedConnection |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection" \ -H "X-Amz-Target: OvertureService.AllocateHostedConnection"
import requests
headers = {
"X-Amz-Target": "OvertureService.AllocateHostedConnection"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'OvertureService.AllocateHostedConnection'
},
});
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "OvertureService.AllocateHostedConnection")
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "OvertureService.AllocateHostedConnection"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocateHostedConnection";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: OvertureService.AllocateHostedConnection"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Provisions a private virtual interface to be owned by the specified Amazon Web Services account. Virtual interfaces created using this action must be confirmed by the owner using ConfirmPrivateVirtualInterface . Until then, the virtual interface is in the Confirming stat
Hover any highlighted part to learn what it does
| X-Amz-Target | OvertureService.AllocatePrivateVirtualInterface |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface" \ -H "X-Amz-Target: OvertureService.AllocatePrivateVirtualInterface"
import requests
headers = {
"X-Amz-Target": "OvertureService.AllocatePrivateVirtualInterface"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface';
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'OvertureService.AllocatePrivateVirtualInterface'
},
});
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface"
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "OvertureService.AllocatePrivateVirtualInterface")
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/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "OvertureService.AllocatePrivateVirtualInterface"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/directconnect/2012-10-25/#X-Amz-Target=OvertureService.AllocatePrivateVirtualInterface";
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: OvertureService.AllocatePrivateVirtualInterface"
]),
]];
$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 Direct Connect?
AWS Direct Connect 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 Direct Connect 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?