Automation decision guide
OpenAdapt vs a direct API
A supported API is usually the best automation interface. It is direct, testable, and easier to operate than a GUI. OpenAdapt is not an argument against APIs. It handles the last mile when the required operation exists only behind a browser, desktop application, RDP session, or Citrix window.
The companion article traces the maintenance and failure costs in more detail. Read the comparison article.
Side by side on the dimensions that matter
Every claim below names its public source. If a vendor doesn't publish a figure, we don't invent one.
Determinism when interfaces drift
OpenAdapt
A compiled workflow re-resolves targets from retained evidence, produces a governed repair proposal, or halts when the visible interface changes beyond its contract.
a supported API
An API bypasses interface layout entirely. Its callers depend on the service's published request, response, and authentication contract instead of screen geometry.
Source: HTTP semantics · OpenAdapt method
Cost per run
OpenAdapt
A healthy compiled run makes no model call, but GUI execution still needs a browser, desktop, or remote session.
a supported API
A direct HTTP API exchanges request and response messages without GUI actuation. Provider charges and rate limits are service-specific.
Source: HTTP messages · OpenAdapt method
Verification of business effects
OpenAdapt
OpenAdapt separates actuation from verification. A read-only API, SQL query, file check, or second interface can prove the effect after the GUI action.
a supported API
A response status describes how the server handled the request. For consequential work, the caller can add a separate read-back or postcondition check instead of treating request acceptance as the complete business result.
Source: HTTP status code semantics · OpenAdapt effect-verifier kit
Halting behavior
OpenAdapt
The workflow refuses before actuation when identity, target, or policy checks fail. If an action may have been dispatched but its effect cannot be proved, it returns RECONCILIATION_REQUIRED without a blind retry.
a supported API
The client owns error handling, idempotency, retries, and reconciliation. HTTP defines conditional request and method semantics, but the application must use them correctly.
Source: HTTP conditional requests · OpenAdapt execution outcomes
Data locality
OpenAdapt
The GUI runtime and retained evidence can stay inside a customer-controlled boundary.
a supported API
The client sends request messages to the API server. The service's deployment contract governs the data after it crosses that network boundary.
Source: HTTP messages · OpenAdapt trust center
Scope: browser, desktop, RDP/Citrix
OpenAdapt
OpenAdapt handles operations that exist only through browser, native desktop, or customer-qualified remote-window interfaces.
a supported API
An API is the best fit when the service owner exposes the complete operation through a supported machine interface. HTTP defines the exchange, while the service defines the available business operations.
Source: OpenAdapt comparison overview · HTTP semantics
Published figures about a supported API that we cite
Where a direct API is strong
- It calls the system directly without rendering or manipulating an interface.
- Requests, responses, authentication, versioning, and error handling can be tested in code.
- It usually runs faster and with less infrastructure than GUI automation.
- The service owner can publish a stable contract and support it as the product changes.
What OpenAdapt does differently
Recording demonstrations, visual targeting, virtual desktop awareness, and selector repair are common. OpenAdapt binds independent effect verification and explicit outcomes to the workflow contract.
Independent business-effect verification
A run is judged by an out-of-band check of the system of record, such as a read-only API call, a SQL query, or re-reading the persisted record, not by the acting session declaring itself successful.
Explicit transaction outcomes
Every consequential run ends with a typed outcome and a preserved run report. VERIFIED requires independent proof. A refusal before actuation and uncertain delivery after possible actuation remain distinct, so an unconfirmed write cannot appear as success.
Deterministic healthy runs
A compiled workflow replays deterministically with zero model calls on healthy runs. Model spend is reserved for compilation and reviewable repair.
External zero-install remote lane
For managed Citrix, RDP, and VDI estates, OpenAdapt can drive the local client window from outside the session, so nothing is installed inside the remote environment. The lane is qualified today against a deterministic stand-in and a real FreeRDP round trip; a real ICA/HDX environment is qualified per customer before consequential use.
Customer-controlled sensitive data
Recordings, screenshots, and compiled bundles can stay inside your boundary. Local, self-hosted, and customer-controlled deployments are first-class, not an enterprise afterthought.
Open MIT local runtime
The compiler and governed runtime are MIT-licensed and inspectable. You can audit exactly what runs beside your systems of record.
Published qualification evidence
Each execution surface ships with bounded, published acceptance evidence, counted effects, refusals, and halts, instead of an unbounded compatibility claim.
Per-surface acceptance results are published in the qualification evidence.
Frequently asked questions
Should I use OpenAdapt when an API already does the job?
No. Use the supported API for the complete operation. OpenAdapt fits the steps the API does not expose, or that your licensing tier, vendor agreement, or IT approval will not let you reach. Verification does not depend on that API either: a read-only API, a database query, a file check, or reacquiring the record through the interface can all prove the effect.
Source: HTTP semantics · OpenAdapt comparison guide
Which should you choose?
Choose a supported API when
Choose the API when it exposes the complete operation you need, its use is permitted, and you can verify the resulting record through the same or a separate read-only interface.
Choose OpenAdapt when
Choose OpenAdapt for the exact steps the API does not expose, including legacy, desktop, remote, and vendor-controlled interfaces. Keep API calls for the parts they can do, including independent verification after GUI actuation.
Use APIs for data movement, orchestration, and verification. Limit OpenAdapt actuation to the UI-bound transaction that the API does not expose.
Test the difference on one real workflow.
Bring one repeated, consequential workflow and measure authoring time, run time, intervention rate, and incorrect-success rate against your current approach. Or watch the governed-execution demo first. It shows result checks and safe stops against the retained event evidence.