Native API

Warp’s Native API is a low-level, reflection-based interface that exposes internal browser functionality via invoke asynchronous method to the User

warp.invoke(endpoint, method, args)

Example returning a JS Object with width and height properties

let res = await warp.invoke("Gui", "Resolution", []);

It covers subsystems like windows, network, filesystem, and GUI, providing the core primitive communication that higher-level features (e.g. Tabs) are built on.
This method always returns a JavaScript Promise resolving with the actual data returning from the Endpoint.

All endpoint methods are async and invoked by passing endpoint name, method name and argument array.
While powerful, these interfaces are rarely used directly in typical development – they are foundational building blocks meant for constructing higher abstractions or engine-level integrations.

Network

MethodArgumentsReturn TypeUsage
Fetchuri: StringString (data URI)await warp.invoke("Network", "Fetch", ["https://google.com"])
DownloadEngineBooleanawait warp.invoke("Network", "DownloadEngine", [])
LoadDefaultEngineBooleanawait warp.invoke("Network", "LoadDefaultEngine", [])
IsEngineReadyBooleanawait warp.invoke("Network", "IsEngineReady", [])

Windows

MethodArgumentsReturn TypeUsage
CreatewinId: StringStringawait warp.invoke("Windows", "Create", ["winId"])
ToastwinId: String, value: ObjectBooleanawait warp.invoke("Windows", "Toast", ["winId", value])
DestroywinId: StringStringawait warp.invoke("Windows", "Destroy", ["winId"])
ShowwinId: StringBooleanawait warp.invoke("Windows", "Show", ["winId"])
HidewinId: StringBooleanawait warp.invoke("Windows", "Hide", ["winId"])
XwinId: String, value: IntInt32await warp.invoke("Windows", "X", ["winId", value])
YwinId: String, value: IntInt32await warp.invoke("Windows", "Y", ["winId", value])
WidthwinId: String, value: IntInt32await warp.invoke("Windows", "Width", ["winId", value])
HeightwinId: String, value: IntInt32await warp.invoke("Windows", "Height", ["winId", value])
OpacitywinId: String, value: FloatDoubleawait warp.invoke("Windows", "Opacity", ["winId", value])
ToFrontwinId: StringBooleanawait warp.invoke("Windows", "ToFront", ["winId"])
ToBackwinId: StringBooleanawait warp.invoke("Windows", "ToBack", ["winId"])
MinimizewinId: StringBooleanawait warp.invoke("Windows", "Minimize", ["winId"])
RestorewinId: StringBooleanawait warp.invoke("Windows", "Restore", ["winId"])
FullscreenwinId: StringBooleanawait warp.invoke("Windows", "Fullscreen", ["winId"])
MaximizewinId: StringBooleanawait warp.invoke("Windows", "Maximize", ["winId"])
DragwinId: String, state: BooleanBooleanawait warp.invoke("Windows", "Drag", ["winId", true])
StatewinId: StringStringawait warp.invoke("Windows", "State", ["winId"])
ListObjectawait warp.invoke("Windows", "List", [])
PointerwinId: String, x: Int, y: IntPointawait warp.invoke("Windows", "Pointer", ["winId", x, y])
ClickwinId: String, X: Int, Y: Int, right: BooleanBooleanawait warp.invoke("Windows", "Click", ["winId", 100, 200, false])

Tabs

CreatetabId: String, url: String, winId: StringObjectawait warp.invoke("Tabs", "Create", ["tab1", "https://...", "win1"])
SerializabletabId: StringObjectawait warp.invoke("Tabs", "Serializable", ["tab1"])
DestroytabId: StringBooleanawait warp.invoke("Tabs", "Destroy", ["tab1"])
ActivatetabId: StringBooleanawait warp.invoke("Tabs", "Activate", ["tab1"])
DeactivatetabId: StringBooleanawait warp.invoke("Tabs", "Deactivate", ["tab1"])
NavigatetabId: String, url: StringBooleanawait warp.invoke("Tabs", "Navigate", ["tab1", "https://..."])
ReadytabId: StringBooleanawait warp.invoke("Tabs", "Ready", ["tab1"])
ReloadtabId: StringBooleanawait warp.invoke("Tabs", "Reload", ["tab1"])
BacktabId: StringBooleanawait warp.invoke("Tabs", "Back", ["tab1"])
ForwardtabId: StringBooleanawait warp.invoke("Tabs", "Forward", ["tab1"])
EvaltabId: String, code: StringStringawait warp.invoke("Tabs", "Eval", ["tab1", "alert('hi')"])
ExiststabId: StringBooleanawait warp.invoke("Tabs", "Exists", ["tab1"])
WintabId: String, winId: StringStringawait warp.invoke("Tabs", "Win", ["tab1", winId])
AgenttabId: String, agentString: StringStringawait warp.invoke("Tabs", "Agent", ["tab1", agentString])
ListObjectawait warp.invoke("Tabs", "List", [])

Drives

NextAvailableDriveLetterStringawait warp.invoke("Drives", "NextAvailableDriveLetter", [])
DriverInstalledBooleanawait warp.invoke("Drives", "DriverInstalled", [])
InstallDriverBooleanawait warp.invoke("Drives", "InstallDriver", [])
GetLogicalDrivesString[]await warp.invoke("Drives", "GetLogicalDrives", [])
Readpath: StringStringawait warp.invoke("Drives", "Read", ["C:/example.txt"])
Writepath: String, data: StringBooleanawait warp.invoke("Drives", "Write", ["C:/example.txt", "Hello world"])
Scanpath: String, depth: Nullable`1Objectawait warp.invoke("Drives", "Scan", ["C:/", 2])

Gui

ScalingDoubleawait warp.invoke("Gui", "Scaling", [])
WidthInt32await warp.invoke("Gui", "Width", [])
HeightInt32await warp.invoke("Gui", "Height", [])
ResolutionRectawait warp.invoke("Gui", "Resolution", [])
ScreensScreen[]await warp.invoke("Gui", "Screens", [])
Pointerx: Int, y: IntPointawait warp.invoke("Gui", "Pointer", [x, y])

Endpoints

MethodArgumentsReturn TypeUsage
ListObjectawait warp.invoke("Endpoints", "List", [])
ExistsendpointName: StringBooleanawait warp.invoke("Endpoints", "Exists", ["Tabs"])

Installation

UpdateBooleanawait warp.invoke("Installation", "Update", [])
UpdateAvailableBooleanawait warp.invoke("Installation", "UpdateAvailable", [])
UpdateVersionDoubleawait warp.invoke("Installation", "UpdateVersion", [])
InstalledVersionDoubleawait warp.invoke("Installation", "InstalledVersion", [])
Settingsname: String, value: ObjectStringawait warp.invoke("Installation", "Settings", ["mysetting", "myvalue"])

Instance

DebugBooleanawait warp.invoke("Instance", "Debug", [])
IncognitoBooleanawait warp.invoke("Instance", "Incognito", [])
IsAdminBooleanawait warp.invoke("Instance", "IsAdmin", [])
IsIncognitoBooleanawait warp.invoke("Instance", "IsIncognito", [])