Query Page

airtop.page_query
ActionBusiness appsconnection required

Calls the Airtop API with the connection's credentials.

Ask a question about the page, or extract data from it, in words.

Connection

Required
Yes — the node will not save without one
Auth type
Bearer token
Providers
Airtop
Secret shape
the API key, or {"api_key": "…"}
Config it needs
base_url
Resolved by
config.connection_id, else node.connection_id

Configuration

7 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
session_id
The session id returned by airtop.create_session.
stringYes——6aac6f73-bd89-4a76-ab32-5a6c422e8b0b
window_id
The window id returned by airtop.create_window.
stringYes——0334da2a-91b0-42c5-6156-76a5eba87430
prompt
What to ask about the page, such as 'list every product name and price' or 'is the user signed in?'.
stringYes——List every product name and price on this page.
output_schema
A JSON schema describing the answer you want. Without one the shape of the answer may vary between runs.
objectNo——{"properties":{"products":{"type":"array"}},"type":"object"}
follow_pagination_links
Try to load more items than the page shows at first, by following pagination links or scrolling. It costs noticeably more.
booleanNofalse——
cost_threshold_credits
Cancel the operation once it has spent about this many Airtop credits. Leave blank for Airtop's default; 0 disables the threshold entirely.
numberNo—≥ 0—
time_threshold_seconds
Cancel the operation once it has run for about this many seconds. Leave blank for Airtop's default; 0 disables the threshold entirely.
numberNo—≥ 0—

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "follow_pagination_links": false,
  "output_schema": {
    "properties": {
      "products": {
        "type": "array"
      }
    },
    "type": "object"
  },
  "prompt": "List every product name and price on this page.",
  "session_id": "6aac6f73-bd89-4a76-ab32-5a6c422e8b0b",
  "window_id": "0334da2a-91b0-42c5-6156-76a5eba87430"
}

Output

One shape.

result

FieldTypeExample
model_response
Airtop's answer, as the model wrote it.
string—
model_response_json
The answer parsed as JSON when it is JSON — which it is when an output_schema was supplied. Empty otherwise.
object—
status
Airtop's outcome for the operation: success, partial or failure.
string—
request_id
Airtop's id for this request, for their support.
string—
usage
What the operation cost, as Airtop reported it.
object—
warnings
Non-fatal problems Airtop reported alongside the answer.
array—
{
  "model_response": "",
  "model_response_json": {},
  "request_id": "",
  "status": "",
  "usage": {},
  "warnings": []
}

Notes

  • An Airtop session is a live cloud browser and bills for as long as it runs: end it with airtop.terminate_session, and set timeout_minutes as a backstop.
  • This call is billed in Airtop credits. cost_threshold_credits and time_threshold_seconds cancel it if it runs long; 0 disables a threshold.

See Query Page run in a workflow.

In a technical demo we add the Airtop connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.