AgentQL

App · AI Agents · 4 actions

Turn any web page, block of HTML or document into named fields. Describe what you want in plain language and AgentQL finds it by meaning rather than by position, so it keeps working when the page's layout changes.

Actions

ActionWhat it does
Check your AgentQL usageSee how many extractions this account has used, how many are left in the current billing cycle and when the allowance resets.
Extract data from a PDF or imageRead an invoice, a receipt, a contract or a screenshot and pull out the fields you describe.
Extract data from a web pageOpen a web page and pull out the information you describe, as named fields you can use in later steps.
Extract data from HTMLPull named fields out of HTML an earlier step already has, such as the body of a web request, an email, or a page you saved.

Check your AgentQL usage

See how many extractions this account has used, how many are left in the current billing cycle and when the allowance resets. Use it to stop a long workflow before it runs out.

Inputs

None.

Outputs

account_calls_all_timenumber
Calls every key on the account has made in total.
account_calls_this_cyclenumber
Calls every key on the account has made this cycle.
calls_all_timenumber
Calls this key has made in total.
calls_left_this_cyclenumber
How many of those are still unused. Empty on a plan with no per-cycle allowance.
calls_this_cyclenumber
Calls this key has made this cycle.
cycle_ends_attext
When the allowance resets.
cycle_started_attext
When the current billing cycle began.
included_calls_per_cyclenumber
How many calls the plan includes each cycle.
lifetime_call_limitnumber
A total cap on the account, if it has one.
Example output
{
  "account_calls_all_time": 9877,
  "account_calls_this_cycle": 214,
  "calls_all_time": 4021,
  "calls_left_this_cycle": 86,
  "calls_this_cycle": 128,
  "cycle_ends_at": "2026-10-01T00:00:00Z",
  "cycle_started_at": "2026-09-01T00:00:00Z",
  "included_calls_per_cycle": 300,
  "lifetime_call_limit": null
}

Extract data from a PDF or image

Read an invoice, a receipt, a contract or a screenshot and pull out the fields you describe. Accepts PDFs, PNGs and JPEGs, including scans, whether uploaded or linked to.

Inputs

FilefiletextRequired
The PDF or picture to read. Upload one, use a file from an earlier step, or paste a link to one. A PDF costs one AgentQL call per page.
What to extractdata_to_extracttextRequired
Describe the information you want from the document, in plain language, such as 'the invoice number, the total and the due date'. The result comes back as named fields you can use in later steps. AgentQL also tells you the query it wrote from your description: paste that back in here to keep the field names identical on every run.
How carefully to readthoroughnesstext
Quick is right almost always. Choose Careful when a field keeps coming back empty or wrong.One of: fast (Quick, and right for almost everything), standard (Careful: slower, but better on cluttered or unusual layouts). Default: fast.

Outputs

dataobject
The fields that were asked for, by name.
field_countnumber
How many top-level fields came back.
generated_querytext
The AgentQL query written from the description. Paste it back into 'What to extract' to pin the field names. Empty when the query was written by hand.
request_idtext
AgentQL's id for this call, to quote to their support.
Example output
{
  "data": {
    "due_date": "2026-04-30",
    "invoice_number": "INV-2041",
    "total": 13309641.63
  },
  "field_count": 3,
  "generated_query": "{ invoice_number total due_date }",
  "request_id": "7b8c9d0e-1f2a-3b4c-5d6e-7f8a9b0c1d2e"
}

Extract data from a web page

Open a web page and pull out the information you describe, as named fields you can use in later steps. Works on pages that build themselves with JavaScript, and keeps working when the page's layout changes.

Inputs

Page addressurltextRequired
The address of the page to read, such as https://example.com/products/1. It has to be a page anyone can open, since AgentQL does not sign in.
What to extractdata_to_extracttextRequired
Describe the information you want from the page, in plain language, such as 'the product name, price and rating'. The result comes back as named fields you can use in later steps. AgentQL also tells you the query it wrote from your description: paste that back in here to keep the field names identical on every run.
How carefully to readthoroughnesstext
Quick is right almost always. Choose Careful when a field keeps coming back empty or wrong.One of: fast (Quick, and right for almost everything), standard (Careful: slower, but better on cluttered or unusual layouts). Default: fast.
Wait for the page to settlewait_secondsnumber
Seconds to wait after the page opens, for content that arrives a moment later. Leave at 0 unless a field keeps coming back empty.From 0 to 10. Default: 0.
Scroll to the bottom firstscroll_to_bottomtrue/false
Turn this on for pages that load more as you scroll, such as a feed or an endless list of results.Default: false.
Also take a screenshotinclude_screenshottrue/false
Return a picture of the page alongside the data, ready to attach to an email or a message.Default: false.

Outputs

dataobject
The fields that were asked for, by name.
field_countnumber
How many top-level fields came back.
generated_querytext
The AgentQL query written from the description. Paste it back into 'What to extract' to pin the field names. Empty when the query was written by hand.
request_idtext
AgentQL's id for this call, to quote to their support.
screenshottext
A picture of the page, ready to show or attach. Empty unless 'Also take a screenshot' was ticked.
Example output
{
  "data": {
    "in_stock": true,
    "price": "$1,395.00",
    "product_name": "Aeron Chair"
  },
  "field_count": 3,
  "generated_query": "{ product_name price in_stock }",
  "request_id": "ecab9d2c-0212-4b70-a5bc-0c821fb30ae3",
  "screenshot": ""
}

Extract data from HTML

Pull named fields out of HTML an earlier step already has, such as the body of a web request, an email, or a page you saved. Nothing is fetched, so it works on markup that is no longer online.

Inputs

HTMLhtmltextRequired
The HTML to read. Usually this comes from an earlier step rather than being typed in.
What to extractdata_to_extracttextRequired
Describe the information you want from the HTML, in plain language, such as 'the headline, the author and the date'. The result comes back as named fields you can use in later steps. AgentQL also tells you the query it wrote from your description: paste that back in here to keep the field names identical on every run.
How carefully to readthoroughnesstext
Quick is right almost always. Choose Careful when a field keeps coming back empty or wrong.One of: fast (Quick, and right for almost everything), standard (Careful: slower, but better on cluttered or unusual layouts). Default: fast.

Outputs

dataobject
The fields that were asked for, by name.
field_countnumber
How many top-level fields came back.
generated_querytext
The AgentQL query written from the description. Paste it back into 'What to extract' to pin the field names. Empty when the query was written by hand.
request_idtext
AgentQL's id for this call, to quote to their support.
Example output
{
  "data": {
    "author": "A. Reporter",
    "headline": "Quarterly results"
  },
  "field_count": 2,
  "generated_query": "{ headline author }",
  "request_id": "0f1d0b2c-9a51-4a1e-9f0e-4a1b2c3d4e5f"
}

On this page