[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-05。"],[[["\u003cp\u003eThis page covers transport properties for \u003ccode\u003eTargetEndpoint\u003c/code\u003e and \u003ccode\u003eProxyEndpoint\u003c/code\u003e configurations in Apigee and Apigee hybrid, which are used to manage messaging and connection behaviors.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eTargetEndpoint\u003c/code\u003e properties, defined within the \u003ccode\u003eHTTPTargetConnection\u003c/code\u003e element, allow for configuring transport-level settings such as connection timeouts, header and query parameter retention, and streaming behavior, all set as literal values.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eProxyEndpoint\u003c/code\u003e properties, configured within the \u003ccode\u003eHTTPProxyConnection\u003c/code\u003e element, offer control over request forwarding, streaming, compression, API timeouts, and header handling.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eapi.timeout\u003c/code\u003e property sets a maximum execution time for an API proxy, while \u003ccode\u003eio.timeout.millis\u003c/code\u003e specifies the maximum response time for a target endpoint, and the Message Processor will return \u003ccode\u003e504 Gateway Timeout\u003c/code\u003e if either of these are exceeded.\u003c/p\u003e\n"],["\u003cp\u003eProperty values for \u003ccode\u003eTargetEndpoint\u003c/code\u003e and \u003ccode\u003eProxyEndpoint\u003c/code\u003e configurations must be set as literals, not variables, as defined by the Apigee platform.\u003c/p\u003e\n"]]],[],null,["# Endpoint properties reference\n\n*This page\napplies to **Apigee** and **Apigee hybrid**.*\n\n\n*View [Apigee Edge](https://docs.apigee.com/api-platform/get-started/what-apigee-edge) documentation.*\n\nThis topic describes transport properties that can be set in `TargetEndpoint`\nand `ProxyEndpoint`\nconfigurations to control messaging and connection behavior. For full coverage of\nthe `TargetEndpoint`\nand `ProxyEndpoint` configuration options, see [API proxy configuration reference](/apigee/docs/api-platform/reference/api-proxy-configuration-reference).\n\nTargetEndpoint Transport Properties\n-----------------------------------\n\nThe `HTTPTargetConnection` element in `TargetEndpoint` configurations\ndefines a set of HTTP\ntransport properties. You can use these properties to set transport-level configurations.\n\nProperties are set on `TargetEndpoint` `HTTPTargetConnection` elements\nas shown in this example configuration: \n\n```text\n\u003cTargetEndpoint name=\"default\"\u003e\n \u003cHTTPTargetConnection\u003e\n \u003cURL\u003ehttp://mocktarget.apigee.net\u003c/URL\u003e\n \u003cProperties\u003e\n \u003cProperty name=\"request.retain.headers\"\u003eUser-Agent,Referer,Accept-Language\u003c/Property\u003e\n \u003cProperty name=\"retain.queryparams\"\u003eapikey\u003c/Property\u003e\n \u003c/Properties\u003e\n \u003c/HTTPTargetConnection\u003e\n\u003c/TargetEndpoint\u003e\n```\n| **Note:** Property values can only be literals. You cannot set values using variables.\n\nTargetEndpoint Transport Property\nSpecification\n-----------------------------------------------\n\nProxyEndpoint Transport Properties\n----------------------------------\n\n`ProxyEndpoint` `HTTPTargetConnection` elements define a set of HTTP\ntransport properties. These\nproperties can be used to set transport-level configurations.\n\nProperties are set on `ProxyEndpoint` `HTTPProxyConnection` elements\nas shown in this example configuration: \n\n```\n\u003cProxyEndpoint name=\"default\"\u003e\n \u003cHTTPProxyConnection\u003e\n \u003cBasePath\u003e/v1/weather\u003c/BasePath\u003e\n \u003cProperties\u003e\n \u003cProperty name=\"request.streaming.enabled\"\u003etrue\u003c/Property\u003e\n \u003c/Properties\u003e\n \u003c/HTTPProxyConnection\u003e\n\u003c/ProxyEndpoint\u003e\n```\n\nRequest headers\n---------------\n\n\nAn incoming HTTP request includes the HTTP headers sent by the client.\nHeaders with names that match the `X-Apigee-*` pattern are removed from incoming\nrequests if a client sends them. This name pattern is reserved for Apigee.\n\nProxyEndpoint Transport Property\nSpecification\n----------------------------------------------\n\nSetting io.timeout.millis and api.timeout\n-----------------------------------------\n\nThe operation of `io.timeout.millis` and `api.timeout`\nare related. On every request to an API proxy:\n\n1. The Ingress (aka Internal Load Balancer) sends its timeout value to the Message Processor. This timeout value defaults to 300 seconds and is not configurable.\n2. The Message Processor then sets `api.timeout`:\n 1. If `api.timeout` is **not** set at the proxy level, use the timeout set by the Ingress.\n 2. If `api.timeout` is set at the proxy level, set it on the Message Processor to the lesser of the Ingress timeout or the value of `api.timeout`.\n3. The value of `api.timeout` specifies the maximum amount of time an API proxy has\n to execute from the API request to the response.\n\n After each policy in the API proxy executes,\n or before the Message Processor sends the request to the target endpoint,\n the Message Processor calculates (`api.timeout` - elapsed time from the start of the\n request).\n\n If the value is less than zero, then the maximum amount of time to handle the request has\n expired and the Message Processor returns a `504 Gateway Timeout`.\n\n\n4. The value of `io.timeout.millis` specifies the maximum amount of time that the\n target endpoint has to respond.\n\n Before connecting to a target endpoint, the Message Processor determines the lesser of\n (`api.timeout` - elapsed time from the start of the request) and `io.timeout.millis`.\n It then sets `io.timeout.millis` to that value.\n\n If a timeout happens while writing the HTTP request or reading the\n HTTP response, `504 Gateway Timeout` is returned."]]