Create Wireguard Peer

  • Creates a new Wireguard Peer.

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

To create a Wireguard Peer, perform a POST request.

Endpoint

Use the following endpoint to create Wireguard Peer: https://vpn.de-fra.ionos.com/wireguardgateways/{gatewayId}/peers.

Request

curl --location \
--request POST 'https://vpn.de-fra.ionos.com/wireguardgateways/85c79b4b-5b40-570a-b788-58dd46ea71e2/peers' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJraWQiO' \
--header 'Content-Type: application/json' \
--data-raw '{
  "metadata": {},
  "properties": {
    "name": "My Company Gateway Peer",
    "description": "Allows local machine A to connect to Datacenter LAN Y.",
    "endpoint": {
      "host": "1.2.3.4",
      "port": 51820
    },
    "allowedIPs": [
      "1.2.3.4/32"
    ],
    "publicKey": "no8iaSEoqfbI6PVYsdEiUU5efYdtKX8VAhKity19MWI="
  }
}'

Below is the list of mandatory body parameters for creating a Wireguard Peer:

Body ParametersRequiredTypeDescriptionExample

metadata

no

object

Metadata related to the WireGuard peer.

{}

properties

yes

object

Properties with all data needed to create a new WireGuard peer. Note: There is a limit of 20 peers per gateway.

properties.name

yes

string

The human-readable name of the WireGuard peer.

My Company Gateway Peer

properties.description

no

string

Human-readable description of the WireGuard peer.

Allows local machine A to connect to Datacenter LAN Y.

properties.endpoint

yes

object

Properties needed to define the WireGuard endpoint.

properties.endpoint.host

yes

string

Hostname or IPV4 address that the WireGuard Server will connect to.

1.2.3.4

properties.endpoint.port

yes

integer

Port that the WireGuard Server will connect to.

51820

properties.allowedIPs

yes

array

The subnet CIDRs that are allowed to connect to the WireGuard Gateway. Specify "a.b.c.d/32" for an individual IP address. Specify "0.0.0.0/0" or "::/0" for all addresses.

["1.2.3.4/32"]

properties.publicKey

yes

string

The public key for the WireGuard peer.

no8iaSEoqfbI6PVYsdEiUU5efYdtKX8VAhKity19MWI=

Response

201 Successful operation

{
  "id": "b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  "type": "wireguardpeer",
  "href": "/wireguardgateways/{gatewayId}/peers/b62b3a40-adee-5b6c-b98d-be20bfcbdd91",
  "metadata": {
    "createdDate": "2020-12-10T13:37:50+01:00",
    "createdBy": "ionos:identity:::users/87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "createdByUserId": "87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "lastModifiedDate": "2020-12-11T13:37:50+01:00",
    "lastModifiedBy": "ionos:identity:::users/87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "lastModifiedByUserId": "87f9a82e-b28d-49ed-9d04-fba2c0459cd3",
    "resourceURN": "ionos:<product>:<location>:<contract>:<resource-path>",
    "status": "AVAILABLE",
    "statusMessage": null
  },
  "properties": {
    "name": "My Company Gateway Peer",
    "description": "Allows local machine A to connect to Datacenter LAN Y.",
    "endpoint": {
      "host": "1.2.3.4",
      "port": 51820
    },
    "allowedIPs": [
      "1.2.3.4/32"
    ],
    "publicKey": "no8iaSEoqfbI6PVYsdEiUU5efYdtKX8VAhKity19MWI="
  }
}

Result: The Wireguard Peer is successfully created. the id and other details of the created Wireguard Peer are provided in the response.

Last updated