curl --request GET \
--url https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric', 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.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"zones": [
{}
],
"vpcs": [
{}
],
"links": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"ownerType": "<string>",
"fabricNative": true,
"regionAId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"zoneAId": "<string>",
"zoneAName": "<string>",
"vpcAId": "<string>",
"cidrA": "<string>",
"vpnGatewayAId": "<string>",
"publicIpA": "<string>",
"customerGatewayAId": "<string>",
"vpnConnectionAId": "<string>",
"regionBId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"zoneBId": "<string>",
"zoneBName": "<string>",
"vpcBId": "<string>",
"cidrB": "<string>",
"vpnGatewayBId": "<string>",
"publicIpB": "<string>",
"customerGatewayBId": "<string>",
"vpnConnectionBId": "<string>",
"pskEncrypted": "<string>",
"status": "<string>",
"failureReason": "<string>",
"retryCount": 123,
"maxRetries": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"regionErrors": {},
"topologyCapability": {}
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}Get the fabric overview
GET /api/v1/network/vpc-vpn/fabric
curl --request GET \
--url https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric', 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.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.stg.simnet.cloud/api/v1/network/vpc-vpn/fabric")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"zones": [
{}
],
"vpcs": [
{}
],
"links": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"ownerType": "<string>",
"fabricNative": true,
"regionAId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"zoneAId": "<string>",
"zoneAName": "<string>",
"vpcAId": "<string>",
"cidrA": "<string>",
"vpnGatewayAId": "<string>",
"publicIpA": "<string>",
"customerGatewayAId": "<string>",
"vpnConnectionAId": "<string>",
"regionBId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"zoneBId": "<string>",
"zoneBName": "<string>",
"vpcBId": "<string>",
"cidrB": "<string>",
"vpnGatewayBId": "<string>",
"publicIpB": "<string>",
"customerGatewayBId": "<string>",
"vpnConnectionBId": "<string>",
"pskEncrypted": "<string>",
"status": "<string>",
"failureReason": "<string>",
"retryCount": 123,
"maxRetries": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"regionErrors": {},
"topologyCapability": {}
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}{
"message": "Operation failed",
"timestamp": "2023-11-07T05:31:56Z",
"detail": "Unable to find a suitable host"
}Authorizations
The access token from a signed-in console session, sent as Authorization: Bearer <token>. It must be issued for the Simnet API audience — an identity token, or a token for another application, is refused with 401.
There are no API keys, client secrets or service accounts yet, so this is a personal, short-lived credential carrying your full account access. Programmatic credentials with role-based access are on the roadmap. See Authentication.
Headers
Query Parameters
Response
Success. Rows are under zones.
Recovered from the code that builds this response. Rows arrive under zones, vpcs, links — the compute platform's own key, not content.
The rows, under zones.
The rows, under vpcs.
The rows, under links.
Show child attributes
Show child attributes
Regions that failed, keyed by region. Present on multi-region requests — a 200 with entries here is a partial result, not a complete one.