Thread-safe light-weight HTTP request factory layer on top of the HTTP transport that has an
optional HTTP request initializer for initializing requests.
For example, to use a particular authorization header across all requests, use:
[[["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-08-28 UTC."],[],[],null,["# Class HttpRequestFactory (2.0.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.0.0 (latest)](/java/docs/reference/google-http-client/latest/com.google.api.client.http.HttpRequestFactory)\n- [1.47.1](/java/docs/reference/google-http-client/1.47.1/com.google.api.client.http.HttpRequestFactory)\n- [1.46.3](/java/docs/reference/google-http-client/1.46.3/com.google.api.client.http.HttpRequestFactory)\n- [1.45.3](/java/docs/reference/google-http-client/1.45.3/com.google.api.client.http.HttpRequestFactory)\n- [1.44.2](/java/docs/reference/google-http-client/1.44.2/com.google.api.client.http.HttpRequestFactory)\n- [1.43.2](/java/docs/reference/google-http-client/1.43.2/com.google.api.client.http.HttpRequestFactory)\n- [1.42.3](/java/docs/reference/google-http-client/1.42.3/com.google.api.client.http.HttpRequestFactory)\n- [1.41.8](/java/docs/reference/google-http-client/1.41.8/com.google.api.client.http.HttpRequestFactory) \n\n public final class HttpRequestFactory\n\nThread-safe light-weight HTTP request factory layer on top of the HTTP transport that has an\noptional [HTTP request initializer](/java/docs/reference/google-http-client/latest/com.google.api.client.http.HttpRequestInitializer) for initializing requests.\n\nFor example, to use a particular authorization header across all requests, use:\n\npublic static HttpRequestFactory createRequestFactory(HttpTransport transport) {\nreturn transport.createRequestFactory(new HttpRequestInitializer() {\npublic void initialize(HttpRequest request) throws IOException {\nrequest.getHeaders().setAuthorization(\"...\");\n}\n});\n} \n\nInheritance\n-----------\n\n[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e HttpRequestFactory \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nMethods\n-------\n\n### buildDeleteRequest(GenericUrl url)\n\n public HttpRequest buildDeleteRequest(GenericUrl url)\n\nBuilds a `DELETE` request for the given URL.\n\n### buildGetRequest(GenericUrl url)\n\n public HttpRequest buildGetRequest(GenericUrl url)\n\nBuilds a `GET` request for the given URL.\n\n### buildHeadRequest(GenericUrl url)\n\n public HttpRequest buildHeadRequest(GenericUrl url)\n\nBuilds a `HEAD` request for the given URL.\n\n### buildPatchRequest(GenericUrl url, HttpContent content)\n\n public HttpRequest buildPatchRequest(GenericUrl url, HttpContent content)\n\nBuilds a `PATCH` request for the given URL and content.\n\n### buildPostRequest(GenericUrl url, HttpContent content)\n\n public HttpRequest buildPostRequest(GenericUrl url, HttpContent content)\n\nBuilds a `POST` request for the given URL and content.\n\n### buildPutRequest(GenericUrl url, HttpContent content)\n\n public HttpRequest buildPutRequest(GenericUrl url, HttpContent content)\n\nBuilds a `PUT` request for the given URL and content.\n\n### buildRequest(String requestMethod, GenericUrl url, HttpContent content)\n\n public HttpRequest buildRequest(String requestMethod, GenericUrl url, HttpContent content)\n\nBuilds a request for the given HTTP method, URL, and content.\n\n### getInitializer()\n\n public HttpRequestInitializer getInitializer()\n\nReturns the HTTP request initializer or `null` for none.\n\nThis initializer is invoked before setting its method, URL, or content.\n\n### getTransport()\n\n public HttpTransport getTransport()\n\nReturns the HTTP transport."]]