Revoke a VPN device
curl --request DELETE \
--url https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: '<api-key>'}};
fetch('https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}', 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://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "<string>",
"name": "<string>",
"status": "<string>",
"public_key": "<string>",
"allocated_v4": "<string>",
"config_available": true,
"created_at": "2023-11-07T05:31:56Z"
}VPC VPN
Revoke a VPN device
Removes the peer from the gateway and discards any configuration still waiting to be read. The device stops reaching the VPC as soon as the daemon applies it.
DELETE
/
api
/
v1
/
vpcs
/
{uuid}
/
vpn_users
/
{user_uuid}
Revoke a VPN device
curl --request DELETE \
--url https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid} \
--header 'Authorization: <api-key>'import requests
url = "https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}"
headers = {"Authorization": "<api-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: '<api-key>'}};
fetch('https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}', 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://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$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://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.miget.com/api/v1/vpcs/{uuid}/vpn_users/{user_uuid}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "<string>",
"name": "<string>",
"status": "<string>",
"public_key": "<string>",
"allocated_v4": "<string>",
"config_available": true,
"created_at": "2023-11-07T05:31:56Z"
}Authorizations
Bearer token for authentication. Format: 'Bearer {token}'
Headers
Workspace ID (uses default workspace if not provided)
Response
Revoke a VPN device
Api_V1_Entities_VpnUser model
Unique device identifier
Device name, unique within the gateway
Current status (pending, active, failed)
The device's WireGuard public key. The private half is never stored and is returned only once, by the config endpoint
Address the device answers to inside the VPC, allocated from the VPN pool
Whether the configuration can still be downloaded. It can be read exactly once, and reading it empties the vault
Creation timestamp

