curl --request PATCH \
--url https://api.ngrok.com/edges/https/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'ngrok-version: <ngrok-version>' \
--data '
{
"id": "<string>",
"description": "<string>",
"metadata": "<string>",
"hostports": [
"<string>"
],
"mutual_tls": {
"enabled": true,
"certificate_authority_ids": [
"<string>"
]
},
"tls_termination": {
"enabled": true,
"min_version": "<string>"
}
}
'{
"id": "<string>",
"description": "<string>",
"metadata": "<string>",
"created_at": "<string>",
"uri": "<string>",
"hostports": [
"<string>"
],
"mutual_tls": {
"enabled": true,
"certificate_authorities": [
{
"id": "<string>",
"uri": "<string>"
}
]
},
"tls_termination": {
"enabled": true,
"terminate_at": "<string>",
"min_version": "<string>"
},
"routes": [
{
"edge_id": "<string>",
"id": "<string>",
"created_at": "<string>",
"match_type": "<string>",
"match": "<string>",
"uri": "<string>",
"description": "<string>",
"metadata": "<string>",
"backend": {
"enabled": true,
"backend": {
"id": "<string>",
"uri": "<string>"
}
},
"ip_restriction": {
"enabled": true,
"ip_policies": [
{
"id": "<string>",
"uri": "<string>"
}
]
},
"circuit_breaker": {
"enabled": true,
"tripped_duration": 123,
"rolling_window": 123,
"num_buckets": 123,
"volume_threshold": 123,
"error_threshold_percentage": 123
},
"compression": {
"enabled": true
},
"request_headers": {
"enabled": true,
"add": {},
"remove": [
"<string>"
]
},
"response_headers": {
"enabled": true,
"add": {},
"remove": [
"<string>"
]
},
"webhook_verification": {
"enabled": true,
"provider": "<string>",
"secret": "<string>"
},
"oauth": {
"enabled": true,
"provider": {
"github": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
],
"teams": [
"<string>"
],
"organizations": [
"<string>"
]
},
"facebook": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"microsoft": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"google": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"linkedin": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"gitlab": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"twitch": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"amazon": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
}
},
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"auth_check_interval": 123
},
"saml": {
"enabled": true,
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"idp_metadata": "<string>",
"force_authn": true,
"allow_idp_initiated": true,
"authorized_groups": [
"<string>"
],
"entity_id": "<string>",
"assertion_consumer_service_url": "<string>",
"single_logout_url": "<string>",
"request_signing_certificate_pem": "<string>",
"metadata_url": "<string>",
"nameid_format": "<string>"
},
"oidc": {
"enabled": true,
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"issuer": "<string>",
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
]
},
"websocket_tcp_converter": {
"enabled": true
},
"user_agent_filter": {
"enabled": true,
"allow": [
"<string>"
],
"deny": [
"<string>"
]
},
"traffic_policy": {
"enabled": true,
"value": "<string>"
}
}
]
}Update an existing HTTPS edge configuration with new settings, domains, or modules.
curl --request PATCH \
--url https://api.ngrok.com/edges/https/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'ngrok-version: <ngrok-version>' \
--data '
{
"id": "<string>",
"description": "<string>",
"metadata": "<string>",
"hostports": [
"<string>"
],
"mutual_tls": {
"enabled": true,
"certificate_authority_ids": [
"<string>"
]
},
"tls_termination": {
"enabled": true,
"min_version": "<string>"
}
}
'{
"id": "<string>",
"description": "<string>",
"metadata": "<string>",
"created_at": "<string>",
"uri": "<string>",
"hostports": [
"<string>"
],
"mutual_tls": {
"enabled": true,
"certificate_authorities": [
{
"id": "<string>",
"uri": "<string>"
}
]
},
"tls_termination": {
"enabled": true,
"terminate_at": "<string>",
"min_version": "<string>"
},
"routes": [
{
"edge_id": "<string>",
"id": "<string>",
"created_at": "<string>",
"match_type": "<string>",
"match": "<string>",
"uri": "<string>",
"description": "<string>",
"metadata": "<string>",
"backend": {
"enabled": true,
"backend": {
"id": "<string>",
"uri": "<string>"
}
},
"ip_restriction": {
"enabled": true,
"ip_policies": [
{
"id": "<string>",
"uri": "<string>"
}
]
},
"circuit_breaker": {
"enabled": true,
"tripped_duration": 123,
"rolling_window": 123,
"num_buckets": 123,
"volume_threshold": 123,
"error_threshold_percentage": 123
},
"compression": {
"enabled": true
},
"request_headers": {
"enabled": true,
"add": {},
"remove": [
"<string>"
]
},
"response_headers": {
"enabled": true,
"add": {},
"remove": [
"<string>"
]
},
"webhook_verification": {
"enabled": true,
"provider": "<string>",
"secret": "<string>"
},
"oauth": {
"enabled": true,
"provider": {
"github": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
],
"teams": [
"<string>"
],
"organizations": [
"<string>"
]
},
"facebook": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"microsoft": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"google": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"linkedin": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"gitlab": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"twitch": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
},
"amazon": {
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
],
"email_addresses": [
"<string>"
],
"email_domains": [
"<string>"
]
}
},
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"auth_check_interval": 123
},
"saml": {
"enabled": true,
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"idp_metadata": "<string>",
"force_authn": true,
"allow_idp_initiated": true,
"authorized_groups": [
"<string>"
],
"entity_id": "<string>",
"assertion_consumer_service_url": "<string>",
"single_logout_url": "<string>",
"request_signing_certificate_pem": "<string>",
"metadata_url": "<string>",
"nameid_format": "<string>"
},
"oidc": {
"enabled": true,
"options_passthrough": true,
"cookie_prefix": "<string>",
"inactivity_timeout": 123,
"maximum_duration": 123,
"issuer": "<string>",
"client_id": "<string>",
"client_secret": "<string>",
"scopes": [
"<string>"
]
},
"websocket_tcp_converter": {
"enabled": true
},
"user_agent_filter": {
"enabled": true,
"allow": [
"<string>"
],
"deny": [
"<string>"
]
},
"traffic_policy": {
"enabled": true,
"value": "<string>"
}
}
]
}Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
unique identifier of this edge
unique identifier of this edge
human-readable description of what this edge will be used for; optional, max 255 bytes.
arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes.
hostports served by this edge
edge modules
Show child attributes
n/a
Show child attributes
Updates an HTTPS Edge by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API.
unique identifier of this edge
human-readable description of what this edge will be used for; optional, max 255 bytes.
arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes.
timestamp when the edge configuration was created, RFC 3339 format
URI of the edge API resource
hostports served by this edge
edge modules
Show child attributes
n/a
Show child attributes
routes
Show child attributes
Was this page helpful?