API Reference
Categories
EndUserDataSourceAccounts
EndUsers
- GETGet EndUser emails
- GETList EndUsers
- PUTUpdate EndUser
- POSTCreate EndUser
- GETGet EndUser by heron_id or end_user_id
- DELDelete EndUser by heron_id or end_user_id
- GETGet EndUser emails
- GETGet EndUser information
- PATCHPatch EndUser information
- POSTEnrich transactions of EndUser
- GETGet EndUser physical location
- GETRetrieve CRM sync events for an end user
- POSTTrigger a CRM Sync for an End User
EndUserEmails
EndUserEntity
EndUserFiles
- GETAll EndUserFiles
- GETGet all file classes
- GETGet recent files by file class
- GETGet file rename rules
- POSTCreate a file rename rule
- PATCHUpdate a file rename rule
- PATCHUpdate the end user file's class
- GETGet EndUserFile as a base64 string
- POSTTrigger async parsing of an end user file
- PATCHUpdate Parsed Results
- GETGet parsed results from uploaded files
- POSTTrigger file's rename rule
- POSTTrigger splitting a combined end user file into its child files based on its page_classes
- GETGet EndUserFiles
- POSTPost EndUserFile
- GETDownload EndUserFiles
- GETDownload xlsx of parsed results from uploaded files
EndUserCalculations
- GETGet EndUser balance
- GETGet EndUser forecasts
- GETGet EndUser statistics
- GETGet EndUser anomalies
- GETGet EndUser bank statement summary
- GETGet EndUser metric benchmarks
- GETExport as a spreadsheet
- GETGet EndUser transactions grouped by counterparty or merchant
- GETGet EndUser Heron Score (beta)
- GETGet EndUser industry
- GETGet EndUser merchant summary
- GETGet EndUser named dates
- GETGet EndUser cashflow P&L
- PUTUpdate EndUser P&L layout
- GETGet EndUser recurring transactions report
- GETGet EndUser scorecard
- POSTRequest EndUser scorecard
- GETGet EndUser transaction data coverage
EndUserAttributes
EnrichmentFeedback
EndUserFinancials
EndUserRules
Integrations
- POSTSend a Finicity Connect email to an end user
- POSTTrigger a cashflow report generation for an end user
- POSTTrigger a statement reports generation for an end user
- POSTTrigger a Finicity VOE transactions report generation for an end user
- PUTUpdate an Integration Link
- GETList Integrations
- POSTCreate an integration
- PUTUpdate Integration
- GETGet IntegrationLinks by Integration
- POSTCreate an integration Link
- DEL(Soft-)Delete an integration link
- POSTRefresh an IntegrationLink
EndUserIntegrations
- POSTUpload Inscribe
- GETGet Integration Links
- POSTUpload Ocrolus
- GETGet PDFs
- POSTParse all PDF
- POSTUpload PDF
- POSTUpload Plaid assets
- POSTUpload Plaid transactions
- POSTUpload Yodlee
- PUTUpdate PDF attributes including status
- PATCHSend patch transactions for a pdf statement
- POSTReloads transactions for a pdf
- POSTUnloads transactions for a pdf
ISOApplication
- POSTUpload an ISO application PDF for for an end user
- GETGet EndUser ISO Applications
- POSTUpload an ISO application PDF for automated scrubbing in under 15 seconds
- POSTUpload an ISO application PDF for automated scrubbing in under 15 seconds (base64)
- GETGet the scrubbed results and data validations of an uploaded ISO application by its heron_id (prefixed "iso_")
EndUserAccounts
EnrichedTransactions
Transactions
Merchants
ParsedEndUserSubmission
Users
Get apitransactions
Get enriched transaction
curl --request GET \
--url https://app.herondata.io/api/transactions/{reference_id_or_heron_id} \
--header 'Authorization: Basic <encoded-value>'
{
"transaction_enriched": {
"account_id": "checking_account_202348",
"amount": -42.42,
"annotation": {
"annotator": {
"context": "sync",
"priority_type": "gold_standard"
},
"category": {
"heron_id": "ctg_Rn5h5A7BGm2is4DRvGhGCE",
"label": "Rent"
},
"confidence": 123,
"model_version": "<string>"
},
"balance": 423,
"currency": "USD",
"description": "GOOGLE *ADS12340929 [email protected] US",
"end_user_id": "my_best_customer_203948",
"features": {
"description_clean": "GOOGLE ADS",
"duplicate_of_id": "<any>",
"has_matching_transaction": true,
"is_potential_duplicate": true,
"is_recurring": true
},
"heron_id": "txn_KjPQKaF6BdpSpR6ewTPXNE",
"last_updated": "2025-03-04T17:08:55.147655",
"merchant": {
"categories": [
{
"code": "7311",
"description": "Advertising services",
"slug": "advertising_services"
}
],
"group_id": "Uber",
"heron_id": "mrc_H4woHtq2y7hw3GLRh4hv62",
"icon_url": "<string>",
"is_priority": true,
"logo_url": "<string>",
"name": "<string>",
"url": "<string>"
},
"reference_id": "my_favourite_transaction_231098",
"request_id": "req_gwxinWjDsZDbsLkoJFCQ7n",
"timestamp": "2021-11-12T10:38:05Z",
"transaction_code": "card"
}
}
Authorizations
Basic authentication header of the form Basic <encoded-value>
, where <encoded-value>
is the base64-encoded string username:password
.
Path Parameters
Response
Amount. Inflows to an account should be positive, and outflows from an account should be negative. If using Plaid, please flip the amount sign for all transactions.
-42.42
The text description for the transaction
"GOOGLE *ADS12340929 [email protected] US"
Your unique ID for account associated with transaction
400
"checking_account_202348"
The category annotation associated with the transaction
sync
, async_
, manual
, undetermined
gold_standard
, client_feedback
, tagging_ui
, reconcile
, heuristic
, classifier
, undetermined
The running balance of the account after transaction ocurred
423
ISO 4217 currency code
3
"USD"
Your unique ID for end user associated with transaction
140
"my_best_customer_203948"
Features calculated from transaction
The cleaned description of the transaction
"GOOGLE ADS"
Indicates that the transaction is a duplicate and gives the heron_id of the original
Whether the transaction is a transfer; requires end_user_id and timestamp to be present
Indicates whether the transaction has another transaction similar to it
Whether the transaction is recurring or not; requires end_user_id and timestamp to be present
Unique ID of transaction; generated by Heron Data
"txn_KjPQKaF6BdpSpR6ewTPXNE"
When the transaction was last updated, either by updating its enrichments or the values of the transaction itself
"2025-03-04T17:08:55.147655"
The merchant associated with the transaction
Uber
, Google
, Intuit
, debt.mca_or_rbf
, debt.non_bank_business
, debt.equipment_and_auto_leasing
, debt.mortgage
, debt.personal_non_mortgage
, debt.collections
"mrc_H4woHtq2y7hw3GLRh4hv62"
Your unique ID for transaction
140
"my_favourite_transaction_231098"
ID associated with request, e.g., all transactions in same POST request will have same request_id
"req_gwxinWjDsZDbsLkoJFCQ7n"
The ISO 8601 timezone aware timestamp of the transaction; takes precedence over 'date'
"2021-11-12T10:38:05Z"
Code associated with transaction to indicate the type of transaction
140
"card"
Was this page helpful?
curl --request GET \
--url https://app.herondata.io/api/transactions/{reference_id_or_heron_id} \
--header 'Authorization: Basic <encoded-value>'
{
"transaction_enriched": {
"account_id": "checking_account_202348",
"amount": -42.42,
"annotation": {
"annotator": {
"context": "sync",
"priority_type": "gold_standard"
},
"category": {
"heron_id": "ctg_Rn5h5A7BGm2is4DRvGhGCE",
"label": "Rent"
},
"confidence": 123,
"model_version": "<string>"
},
"balance": 423,
"currency": "USD",
"description": "GOOGLE *ADS12340929 [email protected] US",
"end_user_id": "my_best_customer_203948",
"features": {
"description_clean": "GOOGLE ADS",
"duplicate_of_id": "<any>",
"has_matching_transaction": true,
"is_potential_duplicate": true,
"is_recurring": true
},
"heron_id": "txn_KjPQKaF6BdpSpR6ewTPXNE",
"last_updated": "2025-03-04T17:08:55.147655",
"merchant": {
"categories": [
{
"code": "7311",
"description": "Advertising services",
"slug": "advertising_services"
}
],
"group_id": "Uber",
"heron_id": "mrc_H4woHtq2y7hw3GLRh4hv62",
"icon_url": "<string>",
"is_priority": true,
"logo_url": "<string>",
"name": "<string>",
"url": "<string>"
},
"reference_id": "my_favourite_transaction_231098",
"request_id": "req_gwxinWjDsZDbsLkoJFCQ7n",
"timestamp": "2021-11-12T10:38:05Z",
"transaction_code": "card"
}
}