Reference documentation and code samples for the Compute V1 Client class TargetHttpProxy.
Represents a Target HTTP Proxy resource. Google Compute Engine has two Target HTTP Proxy resources: *Global*RegionalA target HTTP proxy is a component of Google Cloud HTTP load balancers. * targetHttpProxies are used by global external Application Load Balancers, classic Application Load Balancers, cross-region internal Application Load Balancers, and Traffic Director. * regionTargetHttpProxies are used by regional internal Application Load Balancers and regional external Application Load Balancers. Forwarding rules reference a target HTTP proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts.
Generated from protobuf messagegoogle.cloud.compute.v1.TargetHttpProxy
Namespace
Google \ Cloud \ Compute \ V1
Methods
__construct
Constructor.
Parameters
Name
Description
data
array
Optional. Data for populating the Message object.
↳ creation_timestamp
string
[Output Only] Creation timestamp in RFC3339 text format.
↳ description
string
An optional description of this resource. Provide this property when you create the resource.
↳ fingerprint
string
Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.
↳ http_keep_alive_timeout_sec
int
Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For global external Application Load Balancers, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For classic Application Load Balancers, this option is not supported.
↳ id
int|string
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
↳ kind
string
[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.
↳ name
string
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression[a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
↳ proxy_bind
bool
This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.
↳ region
string
[Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.
↳ self_link
string
[Output Only] Server-defined URL for the resource.
↳ url_map
string
URL to the UrlMap resource that defines the mapping from URL to the BackendService.
getCreationTimestamp
[Output Only] Creation timestamp in RFC3339 text format.
Returns
Type
Description
string
hasCreationTimestamp
clearCreationTimestamp
setCreationTimestamp
[Output Only] Creation timestamp in RFC3339 text format.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getDescription
An optional description of this resource. Provide this property when you create the resource.
Returns
Type
Description
string
hasDescription
clearDescription
setDescription
An optional description of this resource. Provide this property when you create the resource.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getFingerprint
Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.
Returns
Type
Description
string
hasFingerprint
clearFingerprint
setFingerprint
Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getHttpKeepAliveTimeoutSec
Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For global external Application Load Balancers, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For classic Application Load Balancers, this option is not supported.
Returns
Type
Description
int
hasHttpKeepAliveTimeoutSec
clearHttpKeepAliveTimeoutSec
setHttpKeepAliveTimeoutSec
Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For global external Application Load Balancers, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For classic Application Load Balancers, this option is not supported.
Parameter
Name
Description
var
int
Returns
Type
Description
$this
getId
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
Returns
Type
Description
int|string
hasId
clearId
setId
[Output Only] The unique identifier for the resource. This identifier is defined by the server.
Parameter
Name
Description
var
int|string
Returns
Type
Description
$this
getKind
[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.
Returns
Type
Description
string
hasKind
clearKind
setKind
[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getName
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression[a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
Returns
Type
Description
string
hasName
clearName
setName
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression[a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getProxyBind
This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.
Returns
Type
Description
bool
hasProxyBind
clearProxyBind
setProxyBind
This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.
Parameter
Name
Description
var
bool
Returns
Type
Description
$this
getRegion
[Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.
Returns
Type
Description
string
hasRegion
clearRegion
setRegion
[Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getSelfLink
[Output Only] Server-defined URL for the resource.
Returns
Type
Description
string
hasSelfLink
clearSelfLink
setSelfLink
[Output Only] Server-defined URL for the resource.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getUrlMap
URL to the UrlMap resource that defines the mapping from URL to the BackendService.
Returns
Type
Description
string
hasUrlMap
clearUrlMap
setUrlMap
URL to the UrlMap resource that defines the mapping from URL to the BackendService.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Compute V1 Client - Class TargetHttpProxy (1.35.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.35.0 (latest)](/php/docs/reference/cloud-compute/latest/V1.TargetHttpProxy)\n- [1.34.0](/php/docs/reference/cloud-compute/1.34.0/V1.TargetHttpProxy)\n- [1.33.0](/php/docs/reference/cloud-compute/1.33.0/V1.TargetHttpProxy)\n- [1.32.0](/php/docs/reference/cloud-compute/1.32.0/V1.TargetHttpProxy)\n- [1.31.0](/php/docs/reference/cloud-compute/1.31.0/V1.TargetHttpProxy)\n- [1.30.0](/php/docs/reference/cloud-compute/1.30.0/V1.TargetHttpProxy)\n- [1.29.0](/php/docs/reference/cloud-compute/1.29.0/V1.TargetHttpProxy)\n- [1.28.0](/php/docs/reference/cloud-compute/1.28.0/V1.TargetHttpProxy)\n- [1.27.0](/php/docs/reference/cloud-compute/1.27.0/V1.TargetHttpProxy)\n- [1.26.0](/php/docs/reference/cloud-compute/1.26.0/V1.TargetHttpProxy)\n- [1.25.0](/php/docs/reference/cloud-compute/1.25.0/V1.TargetHttpProxy)\n- [1.24.0](/php/docs/reference/cloud-compute/1.24.0/V1.TargetHttpProxy)\n- [1.23.0](/php/docs/reference/cloud-compute/1.23.0/V1.TargetHttpProxy)\n- [1.22.1](/php/docs/reference/cloud-compute/1.22.1/V1.TargetHttpProxy)\n- [1.21.0](/php/docs/reference/cloud-compute/1.21.0/V1.TargetHttpProxy)\n- [1.20.0](/php/docs/reference/cloud-compute/1.20.0/V1.TargetHttpProxy)\n- [1.19.0](/php/docs/reference/cloud-compute/1.19.0/V1.TargetHttpProxy)\n- [1.18.1](/php/docs/reference/cloud-compute/1.18.1/V1.TargetHttpProxy)\n- [1.17.0](/php/docs/reference/cloud-compute/1.17.0/V1.TargetHttpProxy)\n- [1.16.2](/php/docs/reference/cloud-compute/1.16.2/V1.TargetHttpProxy)\n- [1.14.0](/php/docs/reference/cloud-compute/1.14.0/V1.TargetHttpProxy)\n- [1.13.0](/php/docs/reference/cloud-compute/1.13.0/V1.TargetHttpProxy)\n- [1.12.1](/php/docs/reference/cloud-compute/1.12.1/V1.TargetHttpProxy)\n- [1.11.1](/php/docs/reference/cloud-compute/1.11.1/V1.TargetHttpProxy)\n- [1.10.1](/php/docs/reference/cloud-compute/1.10.1/V1.TargetHttpProxy)\n- [1.9.1](/php/docs/reference/cloud-compute/1.9.1/V1.TargetHttpProxy)\n- [1.8.3](/php/docs/reference/cloud-compute/1.8.3/V1.TargetHttpProxy)\n- [1.7.1](/php/docs/reference/cloud-compute/1.7.1/V1.TargetHttpProxy)\n- [1.6.1](/php/docs/reference/cloud-compute/1.6.1/V1.TargetHttpProxy)\n- [1.5.0](/php/docs/reference/cloud-compute/1.5.0/V1.TargetHttpProxy) \nReference documentation and code samples for the Compute V1 Client class TargetHttpProxy.\n\nRepresents a Target HTTP Proxy resource. Google Compute Engine has two Target HTTP Proxy resources: \\* [Global](/compute/docs/reference/rest/v1/targetHttpProxies) \\* [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionTargetHttpProxies) A target HTTP proxy is a component of Google Cloud HTTP load balancers. \\* targetHttpProxies are used by global external Application Load Balancers, classic Application Load Balancers, cross-region internal Application Load Balancers, and Traffic Director. \\* regionTargetHttpProxies are used by regional internal Application Load Balancers and regional external Application Load Balancers. Forwarding rules reference a target HTTP proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts.\n\nGenerated from protobuf message `google.cloud.compute.v1.TargetHttpProxy`\n\nNamespace\n---------\n\nGoogle \\\\ Cloud \\\\ Compute \\\\ V1\n\nMethods\n-------\n\n### __construct\n\nConstructor.\n\n### getCreationTimestamp\n\n\\[Output Only\\] Creation timestamp in RFC3339 text format.\n\n### hasCreationTimestamp\n\n### clearCreationTimestamp\n\n### setCreationTimestamp\n\n\\[Output Only\\] Creation timestamp in RFC3339 text format.\n\n### getDescription\n\nAn optional description of this resource. Provide this property when you create the resource.\n\n### hasDescription\n\n### clearDescription\n\n### setDescription\n\nAn optional description of this resource. Provide this property when you create the resource.\n\n### getFingerprint\n\nFingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.\n\n### hasFingerprint\n\n### clearFingerprint\n\n### setFingerprint\n\nFingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.\n\n### getHttpKeepAliveTimeoutSec\n\nSpecifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For global external Application Load Balancers, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For classic Application Load Balancers, this option is not supported.\n\n### hasHttpKeepAliveTimeoutSec\n\n### clearHttpKeepAliveTimeoutSec\n\n### setHttpKeepAliveTimeoutSec\n\nSpecifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For global external Application Load Balancers, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For classic Application Load Balancers, this option is not supported.\n\n### getId\n\n\\[Output Only\\] The unique identifier for the resource. This identifier is defined by the server.\n\n### hasId\n\n### clearId\n\n### setId\n\n\\[Output Only\\] The unique identifier for the resource. This identifier is defined by the server.\n\n### getKind\n\n\\[Output Only\\] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.\n\n### hasKind\n\n### clearKind\n\n### setKind\n\n\\[Output Only\\] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.\n\n### getName\n\nName of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\n### hasName\n\n### clearName\n\n### setName\n\nName of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\n### getProxyBind\n\nThis field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.\n\n### hasProxyBind\n\n### clearProxyBind\n\n### setProxyBind\n\nThis field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.\n\n### getRegion\n\n\\[Output Only\\] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.\n\n### hasRegion\n\n### clearRegion\n\n### setRegion\n\n\\[Output Only\\] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies.\n\n### getSelfLink\n\n\\[Output Only\\] Server-defined URL for the resource.\n\n### hasSelfLink\n\n### clearSelfLink\n\n### setSelfLink\n\n\\[Output Only\\] Server-defined URL for the resource.\n\n### getUrlMap\n\nURL to the UrlMap resource that defines the mapping from URL to the BackendService.\n\n### hasUrlMap\n\n### clearUrlMap\n\n### setUrlMap\n\nURL to the UrlMap resource that defines the mapping from URL to the BackendService."]]