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
| Action | What it does |
|---|---|
| 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. |
| Extract data from a PDF or image | Read an invoice, a receipt, a contract or a screenshot and pull out the fields you describe. |
| 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. |
| 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. |
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
- File
filetextRequired - 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 extract
data_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 read
thoroughnesstext - 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 address
urltextRequired - 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 extract
data_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 read
thoroughnesstext - 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 settle
wait_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 first
scroll_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 screenshot
include_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
- HTML
htmltextRequired - The HTML to read. Usually this comes from an earlier step rather than being typed in.
- What to extract
data_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 read
thoroughnesstext - 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"
}