URL Fetch Service

URL Fetch

This service allows scripts to access other resources on the web by fetching URLs. A script can use the UrlFetch service to issue HTTP and HTTPS requests and receive responses. The UrlFetch service uses Google's network infrastructure for efficiency and scaling purposes.

Requests made using this service originate from a set pool of IP ranges. You can look up the full list of IP addresses if you need to whitelist or approve these requests.

The default user agent string of UrlFetch service requests is Mozilla/5.0 (compatible; Google-Apps-Script; beanserver; +https://script.google.com; id: SCRIPT_ID).

This service requires the https://www.googleapis.com/auth/script.external_request scope. In most cases Apps Script automatically detects and includes scopes a script needs, but if you are setting your scopes explicitly you must manually add this scope to use UrlFetchApp.

See also

Classes

NameBrief description
HTTPResponseThis class allows users to access specific information on HTTP responses.
UrlFetchAppFetch resources and communicate with other hosts over the Internet.

HTTPResponse

Methods

MethodReturn typeBrief description
getAllHeaders()ObjectReturns an attribute/value map of headers for the HTTP response, with headers that have multiple values returned as arrays.
getAs(contentType)BlobReturn the data inside this object as a blob converted to the specified content type.
getBlob()BlobReturn the data inside this object as a blob.
getContent()Byte[]Gets the raw binary content of an HTTP response.
getContentText()StringGets the content of an HTTP response encoded as a string.
getContentText(charset)StringReturns the content of an HTTP response encoded as a string of the given charset.
getHeaders()ObjectReturns an attribute/value map of headers for the HTTP response.
getResponseCode()IntegerGet the HTTP status code (200 for OK, etc.) of an HTTP response.

UrlFetchApp

Methods

MethodReturn typeBrief description
fetch(url)HTTPResponseMakes a request to fetch a URL.
fetch(url, params)HTTPResponseMakes a request to fetch a URL using optional advanced parameters.
fetchAll(requests)HTTPResponse[]Makes multiple requests to fetch multiple URLs using optional advanced parameters.
getRequest(url)ObjectReturns the request that is made if the operation was invoked.
getRequest(url, params)ObjectReturns the request that is made if the operation were invoked.