Skip to main content

Weighted Backends


Create Weighted Backend

Create a new Weighted backend

Request

POST /backends/weighted

Example Request

curl \
-X POST \
-H "Authorization: Bearer {API_KEY}" \
-H "Content-Type: application/json" \
-H "Ngrok-Version: 2" \
-d '{"description":"acme weighted","metadata":"{\"environment\": \"staging\"}","backends":{"bkdhr_2TMGIzrH6VOqTmv4yYE2TCk6VnT":0,"bkdhr_2TMGJ1GczK2Z0CQe7tsXiTdSOnP":1}}' \
https://api.ngrok.com/backends/weighted

Parameters

   
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]

Response

Returns a 201 response on success

Example Response

{
"id": "bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"uri": "https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"created_at": "2023-07-31T23:17:40Z",
"description": "acme weighted",
"metadata": "{\"environment\": \"staging\"}",
"backends": {
"bkdhr_2TMGIzrH6VOqTmv4yYE2TCk6VnT": 0,
"bkdhr_2TMGJ1GczK2Z0CQe7tsXiTdSOnP": 1
}
}

Fields

   
idstringunique identifier for this Weighted backend
uristringURI of the WeightedBackend API resource
created_atstringtimestamp when the backend was created, RFC 3339 format
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]

Delete Weighted Backend

Delete a Weighted backend by ID.

Request

DELETE /backends/weighted/{id}

Example Request

curl \
-X DELETE \
-H "Authorization: Bearer {API_KEY}" \
-H "Ngrok-Version: 2" \
https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN

Response

Returns a 204 response with no body on success

Get Weighted Backend

Get detailed information about a Weighted backend by ID

Request

GET /backends/weighted/{id}

Example Request

curl \
-X GET \
-H "Authorization: Bearer {API_KEY}" \
-H "Ngrok-Version: 2" \
https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN

Response

Returns a 200 response on success

Example Response

{
"id": "bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"uri": "https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"created_at": "2023-07-31T23:17:40Z",
"description": "acme weighted",
"metadata": "{\"environment\": \"staging\"}",
"backends": {
"bkdhr_2TMGIzrH6VOqTmv4yYE2TCk6VnT": 0,
"bkdhr_2TMGJ1GczK2Z0CQe7tsXiTdSOnP": 1
}
}

Fields

   
idstringunique identifier for this Weighted backend
uristringURI of the WeightedBackend API resource
created_atstringtimestamp when the backend was created, RFC 3339 format
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]

List Weighted Backends

List all Weighted backends on this account

Request

GET /backends/weighted

Example Request

curl \
-X GET \
-H "Authorization: Bearer {API_KEY}" \
-H "Ngrok-Version: 2" \
https://api.ngrok.com/backends/weighted

Response

Returns a 200 response on success

Example Response

{
"backends": [
{
"id": "bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"uri": "https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"created_at": "2023-07-31T23:17:40Z",
"description": "acme weighted",
"metadata": "{\"environment\": \"staging\"}",
"backends": {
"bkdhr_2TMGIzrH6VOqTmv4yYE2TCk6VnT": 0,
"bkdhr_2TMGJ1GczK2Z0CQe7tsXiTdSOnP": 1
}
}
],
"uri": "https://api.ngrok.com/backends/weighted",
"next_page_uri": null
}

Fields

   
backendsWeightedBackendthe list of all Weighted backends on this account
uristringURI of the Weighted backends list API resource
next_page_uristringURI of the next page, or null if there is no next page

WeightedBackend fields

   
idstringunique identifier for this Weighted backend
uristringURI of the WeightedBackend API resource
created_atstringtimestamp when the backend was created, RFC 3339 format
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]

Update Weighted Backend

Update Weighted backend by ID

Request

PATCH /backends/weighted/{id}

Example Request

curl \
-X PATCH \
-H "Authorization: Bearer {API_KEY}" \
-H "Content-Type: application/json" \
-H "Ngrok-Version: 2" \
-d '{"metadata":"{\"environment\": \"production\"}"}' \
https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN

Parameters

   
idstring
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]

Response

Returns a 200 response on success

Example Response

{
"id": "bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"uri": "https://api.ngrok.com/backends/weighted/bkdwd_2TMGJ6jReY87lsxmMNRzyyB3ERN",
"created_at": "2023-07-31T23:17:40Z",
"description": "acme weighted",
"metadata": "{\"environment\": \"production\"}",
"backends": {}
}

Fields

   
idstringunique identifier for this Weighted backend
uristringURI of the WeightedBackend API resource
created_atstringtimestamp when the backend was created, RFC 3339 format
descriptionstringhuman-readable description of this backend. Optional
metadatastringarbitrary user-defined machine-readable data of this backend. Optional
backendsMap<string, int64>the ids of the child backends to their weights [0-10000]