IONOS Cloud VPN Gateway API (1.0.0)

Download OpenAPI specification:Download

The Managed VPN Gateway service provides secure and scalable connectivity, enabling encrypted communication between your IONOS cloud resources in a VDC and remote networks (on-premises, multi-cloud, private LANs in other VDCs etc).

WireguardGateways

Operations to create and manage WireGuard VPN Gateways.

This tag groups all operations for wireguardgateways.

Retrieve all WireguardGateways

This endpoint enables retrieving all WireguardGateways using pagination and optional filters.

Authorizations:
tokenAuth
query Parameters
offset
integer <int32> >= 0
Default: 0

The first element (of the total list of elements) to include in the response. Use together with limit for pagination.

limit
integer <int32> [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with offset for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "55871672-381f-589c-8809-4ffbecd8b27c",
  • "type": "collection",
  • "href": "/wireguardgateways",
  • "items": [
    ],
  • "offset": 0,
  • "limit": 42,
  • "_links": {}
}

Create WireguardGateway

Creates a new WireguardGateway.

The full WireguardGateway needs to be provided to create the object. Optional data will be filled with defaults or left empty.

Authorizations:
tokenAuth
Request Body schema: application/json

WireguardGateway to create.

object

Metadata

required
object (WireguardGateway)

Properties with all data needed to create a new WireGuard Gateway.

Responses

Request samples

Content type
application/json
{
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "type": "wireguardgateway",
  • "href": "/wireguardgateways/85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "metadata": {
    },
  • "properties": {
    }
}

Retrieve WireguardGateway

Returns the WireguardGateway by ID.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

Responses

Response samples

Content type
application/json
{
  • "id": "85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "type": "wireguardgateway",
  • "href": "/wireguardgateways/85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "metadata": {
    },
  • "properties": {
    }
}

Ensure WireguardGateway

Ensures that the WireguardGateway with the provided ID is created or modified. The full WireguardGateway needs to be provided to ensure (either update or create) the WireguardGateway. Non present data will only be filled with defaults or left empty, but not take previous values into consideration.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

Request Body schema: application/json

update WireguardGateway

id
required
string <uuid>

The ID (UUID) of the WireguardGateway.

object

Metadata

required
object (WireguardGateway)

Properties with all data needed to create a new WireGuard Gateway.

Responses

Request samples

Content type
application/json
{
  • "id": "85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "type": "wireguardgateway",
  • "href": "/wireguardgateways/85c79b4b-5b40-570a-b788-58dd46ea71e2",
  • "metadata": {
    },
  • "properties": {
    }
}

Delete WireguardGateway

Deletes the specified WireguardGateway.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

Responses

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}

WireguardPeers

Operations to create and manage WireGuard VPN Gateway peers.

This tag groups all operations for wireguardpeers.

Retrieve all WireguardPeers

This endpoint enables retrieving all WireguardPeers using pagination and optional filters.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

query Parameters
offset
integer <int32> >= 0
Default: 0

The first element (of the total list of elements) to include in the response. Use together with limit for pagination.

limit
integer <int32> [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with offset for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "7c33f158-b93c-5fe7-83c6-84dde2357a33",
  • "type": "collection",
  • "href": "/wireguardgateways/{gatewayId}/peers",
  • "items": [
    ],
  • "offset": 0,
  • "limit": 42,
  • "_links": {}
}

Create WireguardPeer

Creates a new WireguardPeer.

The full WireguardPeer needs to be provided to create the object. Optional data will be filled with defaults or left empty.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

Request Body schema: application/json

WireguardPeer to create.

object

Metadata

required
object (WireguardPeer)

Properties with all data needed to create a new WireGuard Gateway Peer.
Note: there is a limit to the total number of peers. Please refer to product documentation.

Responses

Request samples

Content type
application/json
{
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "type": "wireguardpeer",
  • "href": "/wireguardgateways/{gatewayId}/peers/b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "metadata": {
    },
  • "properties": {
    }
}

Retrieve WireguardPeer

Returns the WireguardPeer by ID.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

peerId
required
string <uuid>
Example: b62b3a40-adee-5b6c-b98d-be20bfcbdd91

The ID (UUID) of the WireguardPeer.

Responses

Response samples

Content type
application/json
{
  • "id": "b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "type": "wireguardpeer",
  • "href": "/wireguardgateways/{gatewayId}/peers/b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "metadata": {
    },
  • "properties": {
    }
}

Ensure WireguardPeer

Ensures that the WireguardPeer with the provided ID is created or modified. The full WireguardPeer needs to be provided to ensure (either update or create) the WireguardPeer. Non present data will only be filled with defaults or left empty, but not take previous values into consideration.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

peerId
required
string <uuid>
Example: b62b3a40-adee-5b6c-b98d-be20bfcbdd91

The ID (UUID) of the WireguardPeer.

Request Body schema: application/json

update WireguardPeer

id
required
string <uuid>

The ID (UUID) of the WireguardPeer.

object

Metadata

required
object (WireguardPeer)

Properties with all data needed to create a new WireGuard Gateway Peer.
Note: there is a limit to the total number of peers. Please refer to product documentation.

Responses

Request samples

Content type
application/json
{
  • "id": "b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "type": "wireguardpeer",
  • "href": "/wireguardgateways/{gatewayId}/peers/b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  • "metadata": {
    },
  • "properties": {
    }
}

Delete WireguardPeer

Deletes the specified WireguardPeer.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 85c79b4b-5b40-570a-b788-58dd46ea71e2

The ID (UUID) of the WireguardGateway.

peerId
required
string <uuid>
Example: b62b3a40-adee-5b6c-b98d-be20bfcbdd91

The ID (UUID) of the WireguardPeer.

Responses

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}

IPSecGateways

Operations to create and manage IPSec VPN Gateways.

This tag groups all operations for ipsecgateways.

Retrieve all IPSecGateways

This endpoint enables retrieving all IPSecGateways using pagination and optional filters.

Authorizations:
tokenAuth
query Parameters
offset
integer <int32> >= 0
Default: 0

The first element (of the total list of elements) to include in the response. Use together with limit for pagination.

limit
integer <int32> [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with offset for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "26a73a96-96e9-51d2-98d2-90043b958618",
  • "type": "collection",
  • "href": "/ipsecgateways",
  • "items": [
    ],
  • "offset": 0,
  • "limit": 42,
  • "_links": {}
}

Create IPSecGateway

Creates a new IPSecGateway.

The full IPSecGateway needs to be provided to create the object. Optional data will be filled with defaults or left empty.

Authorizations:
tokenAuth
Request Body schema: application/json

IPSecGateway to create.

object

Metadata

required
object (IPSecGateway)

Properties with all data needed to create a new IPSec Gateway.

Responses

Request samples

Content type
application/json
{
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "type": "ipsecgateway",
  • "href": "/ipsecgateways/66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "metadata": {
    },
  • "properties": {
    }
}

Retrieve IPSecGateway

Returns the IPSecGateway by ID.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

Responses

Response samples

Content type
application/json
{
  • "id": "66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "type": "ipsecgateway",
  • "href": "/ipsecgateways/66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "metadata": {
    },
  • "properties": {
    }
}

Ensure IPSecGateway

Ensures that the IPSecGateway with the provided ID is created or modified. The full IPSecGateway needs to be provided to ensure (either update or create) the IPSecGateway. Non present data will only be filled with defaults or left empty, but not take previous values into consideration.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

Request Body schema: application/json

update IPSecGateway

id
required
string <uuid>

The ID (UUID) of the IPSecGateway.

object

Metadata

required
object (IPSecGateway)

Properties with all data needed to create a new IPSec Gateway.

Responses

Request samples

Content type
application/json
{
  • "id": "66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "type": "ipsecgateway",
  • "href": "/ipsecgateways/66a114c7-2ddd-5119-9ddf-5a789f5a5a44",
  • "metadata": {
    },
  • "properties": {
    }
}

Delete IPSecGateway

Deletes the specified IPSecGateway.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

Responses

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}

IPSecTunnels

Operations to create and manage IPSec VPN Gateway Tunnels.

This tag groups all operations for ipsectunnels.

Retrieve all IPSecTunnels

This endpoint enables retrieving all IPSecTunnels using pagination and optional filters.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

query Parameters
offset
integer <int32> >= 0
Default: 0

The first element (of the total list of elements) to include in the response. Use together with limit for pagination.

limit
integer <int32> [ 1 .. 1000 ]
Default: 100
Example: limit=100

The maximum number of elements to return. Use together with offset for pagination.

Responses

Response samples

Content type
application/json
{
  • "id": "0ef10f6b-8742-5e74-98ff-3e89354b1082",
  • "type": "collection",
  • "href": "/ipsecgateways/{gatewayId}/tunnels",
  • "items": [
    ],
  • "offset": 0,
  • "limit": 42,
  • "_links": {}
}

Create IPSecTunnel

Creates a new IPSecTunnel.

The full IPSecTunnel needs to be provided to create the object. Optional data will be filled with defaults or left empty.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

Request Body schema: application/json

IPSecTunnel to create.

object

Metadata

required
object (IPSecTunnel)

Properties with all data needed to create a new IPSec Gateway Tunnel.
Note: there is a limit to the total number of tunnels. Please refer to product documentation.

Responses

Request samples

Content type
application/json
{
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "type": "ipsectunnel",
  • "href": "/ipsecgateways/{gatewayId}/tunnels/c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "metadata": {
    },
  • "properties": {
    }
}

Retrieve IPSecTunnel

Returns the IPSecTunnel by ID.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

tunnelId
required
string <uuid>
Example: c28b2d3e-7b15-53ca-ae88-6ae9378d6efe

The ID (UUID) of the IPSecTunnel.

Responses

Response samples

Content type
application/json
{
  • "id": "c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "type": "ipsectunnel",
  • "href": "/ipsecgateways/{gatewayId}/tunnels/c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "metadata": {
    },
  • "properties": {
    }
}

Ensure IPSecTunnel

Ensures that the IPSecTunnel with the provided ID is created or modified. The full IPSecTunnel needs to be provided to ensure (either update or create) the IPSecTunnel. Non present data will only be filled with defaults or left empty, but not take previous values into consideration.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

tunnelId
required
string <uuid>
Example: c28b2d3e-7b15-53ca-ae88-6ae9378d6efe

The ID (UUID) of the IPSecTunnel.

Request Body schema: application/json

update IPSecTunnel

id
required
string <uuid>

The ID (UUID) of the IPSecTunnel.

object

Metadata

required
object (IPSecTunnel)

Properties with all data needed to create a new IPSec Gateway Tunnel.
Note: there is a limit to the total number of tunnels. Please refer to product documentation.

Responses

Request samples

Content type
application/json
{
  • "id": "c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "metadata": { },
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "id": "c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "type": "ipsectunnel",
  • "href": "/ipsecgateways/{gatewayId}/tunnels/c28b2d3e-7b15-53ca-ae88-6ae9378d6efe",
  • "metadata": {
    },
  • "properties": {
    }
}

Delete IPSecTunnel

Deletes the specified IPSecTunnel.

Authorizations:
tokenAuth
path Parameters
gatewayId
required
string <uuid>
Example: 66a114c7-2ddd-5119-9ddf-5a789f5a5a44

The ID (UUID) of the IPSecGateway.

tunnelId
required
string <uuid>
Example: c28b2d3e-7b15-53ca-ae88-6ae9378d6efe

The ID (UUID) of the IPSecTunnel.

Responses

Response samples

Content type
application/json
{
  • "httpStatus": 400,
  • "messages": [
    ]
}