Skip to content

@tauri-apps/plugin-http

Make HTTP requests with the Rust backend.

This API has a scope configuration that forces you to restrict the URLs that can be accessed using glob patterns.

For instance, this scope configuration only allows making HTTP requests to all subdomains for tauri.app except for https://private.tauri.app:

{
"permissions": [
{
"identifier": "http:default",
"allow": [{ "url": "https://*.tauri.app" }],
"deny": [{ "url": "https://private.tauri.app" }]
}
]
}

Trying to execute any API with a URL not configured on the scope results in a promise rejection due to denied access.

function fetch(input: string | URL | Request, init?: RequestInit & ClientOptions): Promise<Response>;

Defined in: plugins/http/guest-js/index.ts:150

Fetch a resource from the network. It returns a Promise that resolves to the Response to that Request, whether it is successful or not.

The request is performed by the Rust backend instead of the webview, so it is not subject to CORS, but the URL must be allowed by the plugin scope.

import { fetch } from '@tauri-apps/plugin-http';
const response = await fetch("http://my.json.host/data.json");
console.log(response.status); // e.g. 200
console.log(response.statusText); // e.g. "OK"
const jsonData = await response.json();
Parameter Type Description
input | string | URL | Request The resource to fetch, as a URL, a string or a Request object.
init? RequestInit & ClientOptions The standard fetch request options, extended with the Rust client options from ClientOptions: maxRedirections, connectTimeout, proxy and danger. The signal option can be used to abort the request.

Promise<Response>

A promise resolving to the Response of the request.

2.0.0

Defined in: plugins/http/guest-js/index.ts:86

Options to configure the Rust client used to make fetch requests

2.0.0

Property Type Description Defined in
connectTimeout? number Timeout in milliseconds plugins/http/guest-js/index.ts:97
danger? DangerousSettings Configuration for dangerous settings on the client such as disabling SSL verification. plugins/http/guest-js/index.ts:105
maxRedirections? number Defines the maximum number of redirects the client should follow. If set to 0, no redirects will be followed. When the scopeRedirects plugin configuration is enabled, every redirect must also be allowed by the configured scope, otherwise the request fails instead of being followed. plugins/http/guest-js/index.ts:95
proxy? Proxy Configuration of a proxy that a Client should pass requests to. plugins/http/guest-js/index.ts:101

Defined in: plugins/http/guest-js/index.ts:113

Configuration for dangerous settings on the client such as disabling SSL verification.

2.3.0

Property Type Description Defined in
acceptInvalidCerts? boolean Disables SSL verification. plugins/http/guest-js/index.ts:117
acceptInvalidHostnames? boolean Disables hostname verification. plugins/http/guest-js/index.ts:121

Defined in: plugins/http/guest-js/index.ts:36

Configuration of a proxy that a Client should pass requests to.

2.0.0

Property Type Description Defined in
all? string | ProxyConfig Proxy all traffic to the passed URL. plugins/http/guest-js/index.ts:40
http? string | ProxyConfig Proxy all HTTP traffic to the passed URL. plugins/http/guest-js/index.ts:44
https? string | ProxyConfig Proxy all HTTPS traffic to the passed URL. plugins/http/guest-js/index.ts:48

Defined in: plugins/http/guest-js/index.ts:56

Detailed configuration of a single proxy server, used when a plain URL string is not enough.

2.0.0

Property Type Description Defined in
basicAuth? { password: string; username: string; } Set the Proxy-Authorization header using Basic auth. plugins/http/guest-js/index.ts:64
basicAuth.password string The password sent to the proxy server. plugins/http/guest-js/index.ts:72
basicAuth.username string The user name sent to the proxy server. plugins/http/guest-js/index.ts:68
noProxy? string A configuration for filtering out requests that shouldn’t be proxied. Entries are expected to be comma-separated (whitespace between entries is ignored) plugins/http/guest-js/index.ts:78
url string The URL of the proxy server. plugins/http/guest-js/index.ts:60

© 2026 Tauri Contributors. CC-BY / MIT