Proxy Configuration API
This API is based on the Device Configuration API framework. For guidance on how to use these APIs, refer to Device Configuration APIs.
This API is in BETA stage. The API is provided for testing purposes and is subject to backward-incompatible changes, including modifications to functionality, behavior, and availability. Don't use in production environment.
Description
The Proxy Configuration API is an interface for requests that configure the Global Proxy functionality.
Authentication
For detailed information on how to authenticate requests to this API, refer to Authentication.
Use cases
Get root entity
Use a GET request and unified-proxy-configuration.v1beta to collect globalNoProxyList, globalHttpsProxy, and globalHttpProxy.
Example:
- curl
- HTTP
curl --request GET \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta"
GET /config/rest/unified-proxy-configuration/v1beta
HOST: <servername>
Content-Type: application/json
200 OK
Content-Type: application/json
{
"status": "success",
"data": {
"globalHttpProxy": "https://192.168.0.210:81",
"globalHttpsProxy": "",
"globalNoProxyList": [
"192.168.0.1",
"192.168.0.2",
"192.168.0.3",
"192.168.0.4",
"192.168.0.5",
"192.168.0.6"
]
}
}
Set root entity
Use a SET request and unified-proxy-configuration.v1beta to configure globalNoProxyList, globalHttpsProxy, and globalHttpProxy.
Example:
- curl
- HTTP
curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta" \
--data '{
"data": {
"globalHttpProxy": "https://192.168.0.211:80",
"globalHttpsProxy": "https://192.168.0.210:80",
"globalNoProxyList": ["192.168.0.8"]
}
}'
PATCH /config/rest/unified-proxy-configuration/v1beta
HOST: <servername>
Content-Type: application/json
{
"data": {
"globalHttpProxy": "https://192.168.0.211:80",
"globalHttpsProxy": "https://192.168.0.210:80",
"globalNoProxyList": ["192.168.0.8"]
}
}
200 OK
Content-Type: application/json
{
"status": "success"
}
Manage global HTTP proxy
Use a GET or SET request and unified-proxy-configuration.v1beta.globalHttpProxy to manage globalHttpProxy.
Set globalHttpProxy
- curl
- HTTP
curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalHttpProxy" \
--data '{
"data": "https://192.168.0.211:80"
}'
PATCH /config/rest/unified-proxy-configuration/v1beta/globalHttpProxy
HOST: <servername>
Content-Type: application/json
{
"data": "https://192.168.0.211:80"
}
200 OK
Content-Type: application/json
{
"status": "success"
}
Get globalHttpProxy
- curl
- HTTP
curl --request GET \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalHttpProxy"
GET /config/rest/unified-proxy-configuration/v1beta/globalHttpProxy
HOST: <servername>
Content-Type: application/json
200 OK
Content-Type: application/json
{
"status": "success",
"data": "https://192.168.0.234:80"
}
Manage global HTTPS proxy
Use a GET or SET request and unified-proxy-configuration.v1beta.globalHttpsProxy to manage globalHttpsProxy.
Set globalHttpsProxy
- curl
- HTTP
curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalHttpsProxy" \
--data '{
"data": "https://192.168.0.211:80"
}'
PATCH /config/rest/unified-proxy-configuration/v1beta/globalHttpsProxy
HOST: <servername>
Content-Type: application/json
{
"data": "https://192.168.0.211:80"
}
200 OK
Content-Type: application/json
{
"status": "success"
}
Get globalHttpsProxy
- curl
- HTTP
curl --request GET \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalHttpsProxy"
GET /config/rest/unified-proxy-configuration/v1beta/globalHttpsProxy
HOST: <servername>
Content-Type: application/json
200 OK
Content-Type: application/json
{
"status": "success",
"data": "https://192.168.0.234:80"
}
Manage global no proxy
Use a GET or SET request and unified-proxy-configuration.v1beta.globalNoProxyList to manage globalNoProxyList.
Set globalNoProxyList
- curl
- HTTP
curl --request PATCH \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalNoProxyList" \
--data '{
"data": [
"192.168.0.1",
"192.168.0.2",
"192.168.0.3",
"192.168.0.4"
]
}'
PATCH /config/rest/unified-proxy-configuration/v1beta/globalNoProxyList
HOST: <servername>
Content-Type: application/json
{
"data": [
"192.168.0.1",
"192.168.0.2",
"192.168.0.3",
"192.168.0.4"
]
}
200 OK
Content-Type: application/json
{
"status": "success"
}
Get globalNoProxyList
- curl
- HTTP
curl --request GET \
--anyauth \
--user "<username>:<password>" \
--header "Content-Type: application/json" \
"http://<servername>/config/rest/unified-proxy-configuration/v1beta/globalNoProxyList"
GET /config/rest/unified-proxy-configuration/v1beta/globalNoProxyList
HOST: <servername>
Content-Type: application/json
200 OK
Content-Type: application/json
{
"status": "success",
"data": [
"192.168.0.1",
"192.168.0.2",
"192.168.0.3",
"192.168.0.4"
]
}
Structure
unified-proxy-configuration.v1beta (Root Entity)
├── globalHttpProxy (Property)
├── globalHttpsProxy (Property)
└── globalNoProxyList (Property)
Entities
unified-proxy-configuration.v1beta
- Description: The global proxy configuration root object
- Type: Singleton
- Operations:
- GET
- SET
- Fields:
globalHttpProxy,globalHttpsProxy,globalNoProxyList
- Fields:
Data types
NoProxy
An array of strings to be parsed and validated in the backend.
{
"type": "array",
"items": {
"type": "string"
}
}