You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| API threat detection with [Defender for APIs](protect-with-defender-for-apis.md)| ✔️ | ✔️ | ❌ | ❌ | ❌ |
90
90
91
91
<sup>1</sup> Depends on how the gateway is deployed, but is the responsibility of the customer.<br/>
92
92
<sup>2</sup> Connectivity to the self-hosted gateway v2 [configuration endpoint](self-hosted-gateway-overview.md#fqdn-dependencies) requires DNS resolution of the endpoint hostname.<br/>
93
-
<sup>3</sup> Two zones are enabled by default; not configurable.<br/>
94
-
<sup>4</sup> CA root certificates for self-hosted gateway are managed separately per gateway<br/>
95
-
<sup>5</sup> Client protocol needs to be enabled.
93
+
<sup>3</sup> CA root certificates for self-hosted gateway are managed separately per gateway<br/>
Copy file name to clipboardExpand all lines: articles/api-management/forward-request-policy.md
+3-7Lines changed: 3 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,7 +35,7 @@ The `forward-request` policy forwards the incoming request to the backend servic
35
35
| timeout | The amount of time in seconds to wait for the HTTP response headers to be returned by the backend service before a timeout error is raised. Minimum value is 0 seconds. Values greater than 240 seconds may not be honored, because the underlying network infrastructure can drop idle connections after this time. Policy expressions are allowed. You can specify either `timeout` or `timeout-ms` but not both. | No | 300 |
36
36
| timeout-ms | The amount of time in milliseconds to wait for the HTTP response headers to be returned by the backend service before a timeout error is raised. Minimum value is 0 ms. Policy expressions are allowed. You can specify either `timeout` or `timeout-ms` but not both. | No | N/A |
37
37
| continue-timeout | The amount of time in seconds to wait for a `100 Continue` status code to be returned by the backend service before a timeout error is raised. Policy expressions are allowed. | No | N/A |
38
-
| http-version | The HTTP protocol version to use when sending the HTTP request to the backend service: <br> - `1`: HTTP/1 <br> - `2`: HTTP/2 <br/> - `2or`: The gateway favors HTTP/2 over HTTP/1, but falls back to HTTP/1 if HTTP/2 doesn't work.<br/><br/> HTTP/2 support is in preview for only the self-hosted gateway and the v2 gateway. See [Usage notes](#usage-notes) for details. | No | 1 |
38
+
| http-version | The HTTP protocol version to use when sending the HTTP request to the backend service: <br> - `1`: HTTP/1 <br> - `2`: HTTP/2 <br/> - `2or1`: The gateway favors HTTP/2 over HTTP/1, but falls back to HTTP/1 if HTTP/2 doesn't work.<br/><br/> HTTP/2 support is in preview for only the self-hosted gateway and the v2 gateway. See [Usage notes](#usage-notes) for details. | No | 1 |
39
39
| follow-redirects | Specifies whether redirects from the backend service are followed by the gateway or returned to the caller. Policy expressions are allowed. | No |`false`|
40
40
| buffer-request-body | When set to `true`, request is buffered and will be reused on [retry](retry-policy.md). | No |`false`|
41
41
| buffer-response | Affects processing of chunked responses. When set to `false`, each chunk received from the backend is immediately returned to the caller. When set to `true`, chunks are buffered (8 KB, unless end of stream is detected) and only then returned to the caller.<br/><br/>Set to `false` with backends such as those implementing [server-sent events (SSE)](how-to-server-sent-events.md) that require content to be returned or streamed immediately to the caller. Policy expressions aren't allowed. | No |`true`|
@@ -53,16 +53,13 @@ The `forward-request` policy forwards the incoming request to the backend servic
53
53
* Use the `http-version` attribute in this policy to enable the HTTP/2 protocol outbound from the gateway to the backend. Set the attribute to `2or1` or `2`. Currently, HTTP/2 support is in preview for only the self-hosted gateway and the v2 gateway.
54
54
55
55
> [!IMPORTANT]
56
-
> In the v2 gateway, HTTP/2 is not supported end-to-end (that is, both inbound to API Management and outbound to the backend). HTTP/2-specific features such as trailers are dropped by the v2 gateway.
57
-
58
-
* In the self-hosted gateway, end-to-end HTTP/2 protocol support is required for [gRPC APIs](grpc-api.md).
59
-
56
+
> In the v2 gateway, HTTP/2 is supported inbound to the API Management gateway and outbound from the gateway to the backend but not end-to-end. Currently, the v2 gateway downgrades an incoming HTTP/2 connection to HTTP/1 before forwarding the request to the backend.
60
57
61
58
## Examples
62
59
63
60
### Send request to HTTP/2 backend
64
61
65
-
The following API level policy forwards all API requests to an HTTP/2 backend service.
62
+
The following API level policy forwards all API requests to an HTTP/2 backend service. For example, use this policy to forward requests from a self-hosted gateway to a gRPC backend.
66
63
67
64
```xml
68
65
<!-- api level -->
@@ -79,7 +76,6 @@ The following API level policy forwards all API requests to an HTTP/2 backend se
79
76
</policies>
80
77
```
81
78
82
-
83
79
### Forward request with timeout interval
84
80
85
81
The following API level policy forwards all API requests to the backend service with a timeout interval of 60 seconds.
Copy file name to clipboardExpand all lines: articles/api-management/grpc-api.md
+1-10Lines changed: 1 addition & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ author: dlepow
6
6
7
7
ms.service: azure-api-management
8
8
ms.topic: how-to
9
-
ms.date: 07/21/2025
9
+
ms.date: 05/06/2024
10
10
ms.author: danlep
11
11
ms.custom:
12
12
- devx-track-arm-template
@@ -25,7 +25,6 @@ To add a gRPC API to API Management, you need to:
25
25
26
26
* Upload the API's Protobuf (protocol buffer) definition file to API Management
27
27
* Specify the location of your gRPC service
28
-
* Enable HTTP/2 support in the self-hosted gateway
29
28
* Configure the API in API Management
30
29
31
30
API Management supports pass-through with the following types of gRPC service methods: unary, server streaming, client streaming, and bidirectional streaming. For background about gRPC, see [Introduction to gRPC](https://grpc.io/docs/what-is-grpc/introduction/).
@@ -77,14 +76,6 @@ API Management supports pass-through with the following types of gRPC service me
77
76
78
77
---
79
78
80
-
## Enable HTTP/2 support in the self-hosted gateway
81
-
82
-
gRPC requires HTTP/2 transport end to end (that is, both inbound to API Management and outbound from the gateway to the backend).
83
-
84
-
* The self-hosted gateway supports inbound HTTP/2 by default.
85
-
86
-
* Enable HTTP/2 protocol outbound support in the self-hosted gateway by setting the `http-version` attribute to `2` or `2or1` in the [forward-request](forward-request-policy.md) policy.
87
-
88
79
## Call gRPC services with .NET
89
80
90
81
For information about calling gRPC services with .NET, see the following articles:
0 commit comments