
Quickbooks Query
CertifiedExecute a query using QuickBooks Online SQL-like Query Language
Quickbooks Query
Execute a query using QuickBooks Online SQL-like Query Language
Query QBO entities like Invoice, Customer, Payment, Bill, Vendor, Item, Account. Supports STARTPOSITION and MAXRESULTS pagination automatically if fetchType is STORE or FETCH.
type: io.kestra.plugin.quickbooks.query.QueryExamples
Query all open invoices with a positive balance
id: qbo_open_invoices
namespace: company.finance
tasks:
- id: open_invoices
type: io.kestra.plugin.quickbooks.query.Query
clientId: "{{ secret('QBO_CLIENT_ID') }}"
clientSecret: "{{ secret('QBO_CLIENT_SECRET') }}"
refreshToken: "{{ secret('QBO_REFRESH_TOKEN') }}"
realmId: "{{ secret('QBO_REALM_ID') }}"
query: "select * from Invoice where Balance > '0'"
fetchType: STORE
Properties
clientId *string
QuickBooks Client ID
The OAuth2 Client ID for your QuickBooks application
clientSecret *string
QuickBooks Client Secret
The OAuth2 Client Secret for your QuickBooks application
query *string
The QBO Query Language statement
Example: select * from Invoice where Balance > '0'
realmId *string
QuickBooks Realm ID
The Realm ID (Company ID) for the QuickBooks account. Digits only, checked after rendering.
refreshToken *string
QuickBooks Refresh Token
A valid OAuth2 refresh token. Kestra will automatically rotate and persist it in the KV Store. Note: Token rotation is not cross-worker concurrency safe, and failed KV store writes may result in lost tokens.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150authUrl string
https://oauth.platform.intuit.com/oauth2/v1/tokens/bearerAuthentication URL
The OAuth2 token endpoint. Must be an intuit.com domain.
baseUrl string
https://quickbooks.api.intuit.comBase URL
The Base URL for QuickBooks API. Must be an intuit.com domain. Defaults to production.
fetchType string
STORESTOREFETCHFETCH_ONENONEThe way to consume the results
FETCH stores results in memory (useful for small datasets). STORE saves them as an internal storage file (mandatory for large datasets).
minorVersion integerstring
75Minor Version
The minor version of the QuickBooks API to use. Must be 1 or more, checked after rendering.
Outputs
row object
Map containing the first row of fetched data.
Only populated if using fetchType=FETCH_ONE.
rows array
List containing the fetched data.
Only populated if using fetchType=FETCH.
size integer
The number of fetched rows.
uri string
uriKestra's internal storage URI of the stored data.
Only populated if using fetchType=STORE.