Skip to main content
PUT
/
edges
/
tcp
/
{id}
/
traffic_policy
Replace
curl --request PUT \
  --url https://api.ngrok.com/edges/tcp/{id}/traffic_policy \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'ngrok-version: <ngrok-version>' \
  --data '
{
  "id": "<string>",
  "module": {
    "enabled": true,
    "value": "<string>"
  }
}
'
import requests

url = "https://api.ngrok.com/edges/tcp/{id}/traffic_policy"

payload = {
"id": "<string>",
"module": {
"enabled": True,
"value": "<string>"
}
}
headers = {
"ngrok-version": "<ngrok-version>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.put(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PUT',
headers: {
'ngrok-version': '<ngrok-version>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({id: '<string>', module: {enabled: true, value: '<string>'}})
};

fetch('https://api.ngrok.com/edges/tcp/{id}/traffic_policy', 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.ngrok.com/edges/tcp/{id}/traffic_policy",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'id' => '<string>',
'module' => [
'enabled' => true,
'value' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"ngrok-version: <ngrok-version>"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.ngrok.com/edges/tcp/{id}/traffic_policy"

payload := strings.NewReader("{\n \"id\": \"<string>\",\n \"module\": {\n \"enabled\": true,\n \"value\": \"<string>\"\n }\n}")

req, _ := http.NewRequest("PUT", url, payload)

req.Header.Add("ngrok-version", "<ngrok-version>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.put("https://api.ngrok.com/edges/tcp/{id}/traffic_policy")
.header("ngrok-version", "<ngrok-version>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"<string>\",\n \"module\": {\n \"enabled\": true,\n \"value\": \"<string>\"\n }\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.ngrok.com/edges/tcp/{id}/traffic_policy")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["ngrok-version"] = '<ngrok-version>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"<string>\",\n \"module\": {\n \"enabled\": true,\n \"value\": \"<string>\"\n }\n}"

response = http.request(request)
puts response.read_body
{
  "enabled": true,
  "value": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

ngrok-version
integer
default:2
required

Path Parameters

id
string
required

Body

application/json
id
string

n/a

module
object

n/a

Response

200 - application/json

n/a

enabled
boolean

true if the module will be applied to traffic, false to disable. default true if unspecified

value
string

the traffic policy that should be applied to the traffic on your endpoint.