# Add cPanel account service proxying

This function lets you configure a cPanel account's
service proxying.

Note:

* If the Web Server role is active
on the server, this function rebuilds the user's web virtual hosts (vhosts) and restarts
the web server.
* If the system cannot rebuild the user's vhosts, the API call will still succeed. However,
the function returns a failure warning in the metadata.
* To remove an account's service proxying, use the UAPI unset_all_service_proxy_backends
function.

Endpoint: GET /ServiceProxy/set_service_proxy_backends
Version: 11.136.0.13
Security: BasicAuth

## Query parameters:

  - `general` (any)
    The hostname or IP address to assign as the server that handles
the account's service proxy requests.

This parameter defaults to the existing service proxy configuration,
if one exists.

  - `service_group` (string)
    The name of a service group for which to assign a proxy backend. The
corresponding service_group_backend value will be the service group's
new proxy backend.

* Mail — The Mail service group.

This parameter defaults to the existing setting, if one exists.

Note:

 * When you call this parameter, you must include a corresponding
 service_group_backend value.
 * To add multiple service_group values, increment the parameter name. For example,
 service_group, service_group-1, and service_group-2.
    Enum: "Mail"

  - `service_group_backend` (any)
    The hostname or IP address of the server to assign as the corresponding
service_group value's proxy backend server.

This parameter defaults to the existing setting, if one exists.

Note:

 * When you call this parameter, you must include a corresponding service_group
 value.
 * To add multiple service_group_backend values, increment the parameter name.
 For example, service_group_backend, service_group_backend-1,
 and service_group_backend-2.

## Response 200 fields (application/json):

  - `apiversion` (integer)
    The version of the API.
    Example: 3

  - `func` (string)
    The name of the method called.
    Example: "set_service_proxy_backends"

  - `module` (string)
    The name of the module called.
    Example: "ServiceProxy"

  - `result` (object)

  - `result.data` (object,null)

  - `result.errors` (array,null)
    List of errors if the API failed.

  - `result.messages` (array,null)
    List of messages generated by the API.

  - `result.metadata` (object)

  - `result.status` (integer)
    * 1 - Success.
* 0 - Failed. Check the errors field for more details.
    Enum: 0, 1

  - `result.warnings` (array,null)
    List of warnings generated by the API. Warnings describe non-critical failures or other problematic conditions noted while running a API.


