GPALRestAPI

GPALRestAPI

GPALRestAPI scans for a free port starting at 3000 and, once bound, broadcasts the port number over UDP to 127.0.0.1:47623 so clients find it automatically. GPAL receives this and sets that browser's RestApiBaseUrl for you, readable as browser.RestApiBaseUrl. Each browser hears its own, so two browsers running OttoMagic each address their own server. A browser that never hears a port does not finish starting, so a browser you are holding always has one.

NOTE

There isn't much to set up here: download the installer and OttoMagic runs it. GPALRestAPI and OttoMagic work together and are useless separated.

Features

  • REST endpoints for everything: navigation, element interaction and queries, script injection before page load, storage across all storage types, page inspection, and DOM context switching
  • Language agnostic: any client that can make HTTP calls (GPAL, Python, Node.js, or curl) can drive the browser
  • Automatic port discovery: scans for a free port from 3000 and broadcasts it over UDP to 127.0.0.1:47623 so clients connect without configuration
  • OpenAPI documented: a bundled openapi.yaml documents every endpoint and its parameters for non-GPAL clients
  • Typed GPAL client: browser.OttoMagicClient is a ready-made fluent wrapper wired to these endpoints
💬 Ask GPAL