Tokenbooks - crypto and fiat accounting and payments
Server Details
Crypto and fiat on one double-entry ledger: sync wallets, reconcile, cost basis, audit-ready close.
- Status
- Healthy
- Uptime
- 99.8% over 24 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 36 tools
Most tools have clearly distinct scopes, and descriptions explicitly delineate boundaries between read, list, and queued actions. However, several transaction-mutating tools (edit_transaction, reprocess_transaction, merge_transactions, split_transactions) and lookup tools (get_help vs get_accounting_reference) have subtle overlaps that could cause occasional misselection.
All tool names use consistent snake_case, and most follow a verb_noun pattern (e.g., add_wallet, list_portfolios, get_request_status). A few deviations like full_resync and incremental_sync use adjective_noun rather than verb_noun, but the overall convention is still predictable.
With 36 tools, the server far exceeds the typical 3-15 range and crosses the 25-tool threshold for being too many, which can overwhelm an agent's selection process. While the accounting domain is complex, many tools could likely be consolidated or scoped more tightly.
The surface covers core accounting lifecycle operations: portfolios, wallets, sync, transactions, rules, journals, cost basis, reports, and fiat simulation. Gaps include no delete/remove wallet, no update/delete portfolio, no workspace creation, and fiat payouts are only simulated rather than executed, but these are minor workarounds.
Available Tools
36 toolsadd_walletAdd Wallet(s) to PortfolioAInspect
Add one or more blockchain addresses and start their first sync. Omit the blockchain connection identifier (integrationId) to add an EVM 0x address on every supported EVM network; other addresses require an integrationId. This tool does not configure exchange accounts and reports which addresses were added or skipped.
| Name | Required | Description | Default |
|---|---|---|---|
| wallets | Yes | ||
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes | |
| syncQueued | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false, so the safety profile is known. The description adds behavioral detail beyond annotations: it triggers an initial sync, reports which addresses were added or skipped (implying partial success), and explains the EVM chain-discovery behavior when integrationId is omitted. This is meaningful context that helps an agent predict tool behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: the first states the core action, the second gives the critical integrationId rule, and the third provides exclusions and reporting behavior. No wasted words, front-loaded with the primary purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has moderate complexity (nested wallets array, required workspace/portfolio refs) but the description, combined with the schema (which already points to list_portfolios/list_workspaces) and the output schema, gives an agent enough to call it correctly. It covers key behavior, exclusions, and the integrationId decision. A minor gap is not addressing what happens on duplicate addresses, but that is not critical for successful invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, which is moderate, and the description adds value beyond the structured definitions. It clarifies that omitting integrationId means adding an EVM 0x address on every supported EVM network, and that non-EVM addresses require an integrationId. This conditional behavior is not fully spelled out in the schema's property descriptions, so the description meaningfully compensates for gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Add one or more blockchain addresses and start their first sync.' It clearly distinguishes this tool from siblings like create_portfolio or list_wallets by focusing on adding addresses, and it adds a useful exclusion: 'This tool does not configure exchange accounts.' The EVM/integrationId nuance further scopes its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool (adding blockchain addresses to a portfolio) and an explicit exclusion ('does not configure exchange accounts'). However, it does not name alternative sibling tools (e.g., list_wallets for viewing existing wallets) or state a specific when-not-to-use condition beyond the exchange account exclusion, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_accounting_rulesApply Accounting RulesADestructiveInspect
Re-run the current saved rules and default assignments for vendors, people, or organizations (counterparty defaults) across eligible existing accounting transactions; this destructive bulk job ignores unsaved edits, so preview first, then track its requestId with get_request_status.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| requestId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (destructiveHint=true, idempotentHint=false), the description adds crucial behavioral context: it is a bulk job, it ignores unsaved edits, it returns a requestId requiring async tracking, and it should be previewed first. This meaningfully helps an agent predict side effects and required follow-up.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one dense, front-loaded sentence: the core purpose comes first, followed by the critical destructive and async caveats. Every clause earns its place, with no filler or repetition of annotation-provided facts.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema and annotations, the description covers the essential workflow, destructive nature, async requestId, and unsaved-edits caveat. The term 'eligible' is left undefined and the preview tool is not explicitly named, but the description is sufficient for a competent agent to select and call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both workspaceRef and portfolioRef documented as exact name or slug. The tool description adds no parameter-level detail, but the baseline of 3 applies because the schema already carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Re-run the current saved rules and default assignments') applied to a specific resource ('eligible existing accounting transactions'), and clearly distinguishes this bulk application tool from siblings like edit_accounting_rules and list_accounting_rules. It also signals the destructive, bulk nature up front.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives a clear workflow: preview first, run the destructive job, then track the requestId with get_request_status. It does not explicitly name preview_transaction_classification or state when to prefer edit_accounting_rules instead, but the context strongly implies this tool is for applying saved rules to existing transactions rather than editing rules.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
confirm_transactionConfirm Portfolio TransactionAInspect
Post a proposed accounting transaction to the books; this queued action returns a requestId.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| transactionId | Yes | Portfolio transaction ID |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | Yes | |
| success | No | |
| requestId | No | |
| transactionId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is non-read-only and non-idempotent. The description adds useful behavioral context by stating the action is queued and returns a requestId, signaling async execution and the need to poll get_request_status. It doesn't mention failure modes or irreversibility, but it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler. The core action ('Post a proposed accounting transaction to the books') is front-loaded, and the queued/requestId detail is packed into a short second clause.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complete schema coverage, three straightforward required parameters, and the presence of an output schema, the description is nearly sufficient. It clearly states what the tool does and what immediate result to expect, though it leaves the exact definition of a 'proposed' transaction and prior workflow implicit.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three required parameters documented in the input schema. The tool description itself adds no parameter-level meaning, so it earns the baseline score rather than extra credit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource: 'Post a proposed accounting transaction to the books.' It also adds the queued/requestId behavior, which helps distinguish this from related transaction tools like edit_transaction, merge_transactions, and split_transactions that operate on existing transactions rather than confirming a proposal.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrases 'proposed accounting transaction' and 'queued action' imply this tool is for committing a previously staged transaction, but the description never states when to use it versus siblings such as preview_transaction_classification or edit_transaction. No explicit alternatives or exclusions are given, so routing is left mostly to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_portfolioCreate PortfolioAInspect
Create an accounting portfolio in an existing workspace, optionally choosing jurisdiction and policies; Canada and US profiles require matching currency, entity type, and timezone. If no jurisdiction is selected, Tokenbooks uses generic accounting defaults. Search help for policy choices; workspace creation remains in the Tokenbooks UI.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Portfolio name | |
| currency | No | Functional currency (default USD) | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| legalEntityType | No | Legal entity classification for an explicit country profile | |
| jurisdictionCode | No | Exact assigned ISO country code, or custom. If omitted, resolves Custom regardless of currency | |
| reportingTimezone | No | Canonical IANA reporting timezone (default UTC) | |
| costBasisLotMethod | No | Lot-matching method for disposals | |
| costBasisPerWallet | No | Whether acquisition lots stay scoped to each wallet | |
| stablecoinTreatment | No | Stablecoin valuation treatment; this does not change lot tracking | |
| gasFeeAccountingTreatment | No | Accounting treatment for gas spend | |
| financialReportingFramework | No | Financial reporting framework (default TAX_ONLY) |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| slug | Yes | |
| currency | Yes | |
| createdAt | Yes | |
| updatedAt | Yes | |
| legalEntityType | No | |
| hasPostedActivity | Yes | |
| reportingTimezone | Yes | |
| accountingConfiguration | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already disclose non-readOnly, non-idempotent, open-world, non-destructive nature. Description adds important behavioral constraints: US/Canada profiles require matching currency, entity type, and timezone, and omitted jurisdiction yields generic accounting defaults. It does not cover auth or return behavior, but output schema covers returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action, then constraints and defaults, then help/UI note. No filler; every clause contributes useful context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter creation tool with 100% schema coverage, full annotations, and an output schema, the description covers purpose, key constraints, defaults, and where to find policy help. It could be richer about policy selection and prerequisites, but it is adequate for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds cross-field requirements (US/Canada need matching currency, entity type, and timezone) and default behavior for omitted jurisdiction, which goes beyond individual parameter docs. It also points to help for policy choices.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Create an accounting portfolio in an existing workspace'. It scopes the operation and distinguishes it from read siblings like get_portfolio/list_portfolios, and explicitly notes that workspace creation remains in the UI.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: an existing workspace is required, jurisdiction/policies are optional, and workspace creation must happen in the UI. It does not name alternative tools or explicitly say when to prefer this over get_portfolio, but the create verb makes usage evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_accounting_rulesEdit Accounting RulesADestructiveInspect
Create, update, enable/disable, reorder, or delete saved accounting rules -- the rule's whole authoring lifecycle. Pass preview: true on any of those to see the impact without saving; use operation: current to preview the saved ruleset as it stands. Results report when a scan is truncated.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Human-readable rule name, shown in the rules list. Only for operation create, update; required for operation create. | |
| action | No | Only for operation create, update; required for operation create. | |
| enabled | No | Whether the rule evaluates. A disabled rule is kept but never fires. Only for operation create, set_enabled; required for operation set_enabled. | |
| preview | No | When true, evaluate the change and return its impact without saving it. Not for operation current. | |
| ruleRef | No | Saved rule handle, from list_accounting_rules. Only for operation update, set_enabled, delete; required for each. | |
| operation | Yes | create: Create a new rule, or preview creating one (preview: true). update: Change the name, conditions, or actions of an existing rule, or preview the change (preview: true). Provide at least one of name, conditions, action. set_enabled: Turn an existing rule on or off without changing it, or preview the change (preview: true). reorder: Set the evaluation order of every rule in the portfolio, or preview it (preview: true). delete: Remove one saved rule from active use, or preview removing it (preview: true). current: Preview the saved rules as they stand, changing nothing. | |
| conditions | No | Only for operation create, update; required for operation create. | |
| maxAffected | No | Preview only: how many affected transactions to sample, at most 25. affectedCount in the result equals this sample size; check candidateCount for the true total match count. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| orderedRuleRefs | No | Every rule handle in the portfolio, in the order they should evaluate. Rules apply in order, so earlier rules win. Only for operation reorder; required for each. |
Output Schema
| Name | Required | Description |
|---|---|---|
| mode | No | |
| jobId | No | |
| detail | No | |
| result | No | |
| status | No | |
| changes | No | |
| truncatedBy | No | |
| scannedCount | No | |
| affectedCount | No | |
| candidateCount | No | |
| lastAffectedAt | No | |
| firstAffectedAt | No | |
| skippedRuleEvidence | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructive, non-idempotent, open-world behavior. The description adds genuinely new traits: the dry-run semantics of preview, the read-only nature of operation: current, and the note that results flag a truncated scan. It does not cover permissions or what deletion does to already-applied journals, but it exceeds the annotation baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with the capability list before the preview mechanics. The trailing clause about truncated scans is slightly orphaned but still useful, and nothing is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 11-parameter tool with deeply nested condition/action schemas and an output schema, the description correctly focuses on operation-level behavior and the dry-run model rather than re-documenting fields. It omits any note about references required per operation (ruleRef, orderedRuleRefs), which the schema covers but which an agent would benefit from seeing summarized.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the operation enum's per-value semantics, so the schema carries most of the load and baseline 3 applies. The description only adds the preview parameter's cross-operation behavior, which is marginal over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific set of verbs (create, update, enable/disable, reorder, delete) against a named resource (saved accounting rules) and frames the scope as 'the rule's whole authoring lifecycle', which cleanly distinguishes it from the read-only sibling list_accounting_rules and the apply_accounting_rules executor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear operational context: preview: true works on any mutating operation and operation: current previews the saved ruleset. However, it never explicitly names the alternatives (list_accounting_rules for reading, apply_accounting_rules for running) or states when this tool should NOT be used, so routing is left partly to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_transactionEdit TransactionAInspect
Change one accounting transaction (a Portfolio Transaction): update_fields for memo, the full tag set, or operation type; update_journal_line for the ledger account, counterparty, or reporting-group assignments on one debit or credit line (read the line number first, look up selectable values with list_journal_line_assignment_options); or set_fmv_override to correct a fair market value and recompute dependent cost-basis records. Track returned requestIds, or pass waitForCompletion (update_fields, set_fmv_override) to wait for a terminal state.
| Name | Required | Description | Default |
|---|---|---|---|
| memo | No | New memo; pass null to clear it Only for operation update_fields. | |
| tags | No | Replace the full set of transaction tags Only for operation update_fields. | |
| reason | No | Immutable root reason whose nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references Only for operation set_fmv_override. | |
| assetId | No | Asset ID to override (e.g. eth_1, as returned by the read tools) Only for operation set_fmv_override; required for each. | |
| subType | No | New operation sub-type (requires operationType) Only for operation update_fields. | |
| operation | Yes | update_fields: Change memo, the full tag set, or the accounting operation type. update_journal_line: Change the ledger account, counterparty, or reporting-group assignments on one transaction's debit or credit line. set_fmv_override: Set a corrected fair market value per unit for one asset on the transaction and recompute dependent cost-basis records. | |
| timeoutMs | No | Maximum wait time in milliseconds, 1000 to 60000 (default 30000) Not for operation update_journal_line. | |
| lineNumber | No | Journal entry line number (1-based) Only for operation update_journal_line; required for each. | |
| quoteSource | No | Optional source/justification for the price Only for operation set_fmv_override. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| accountNumber | No | Chart-of-accounts number to assign (from list_journal_line_assignment_options, type: ledger_account) Only for operation update_journal_line. | |
| newValueQuote | No | Exact per-unit decimal string in base currency, e.g. "0". Do not use price. Only for operation set_fmv_override; required for each. | |
| operationType | No | New accounting operation type Only for operation update_fields. | |
| quoteCurrency | No | Optional quote currency (defaults to base currency) Only for operation set_fmv_override. | |
| transactionId | Yes | Portfolio transaction ID | |
| pollIntervalMs | No | Polling interval in milliseconds, 100 to 5000 (default 500) Not for operation update_journal_line. | |
| counterpartyName | No | Counterparty name to assign; pass null to unset Only for operation update_journal_line. | |
| waitForCompletion | No | When true, poll queued request IDs and include terminal status/final state before returning Not for operation update_journal_line. | |
| responsibilityCenterAssignments | No | Typed responsibility-center assignment set, one per dimension. Replaces the line assignments; pass [] to clear every dimension. Type keys and center names come from list_journal_line_assignment_options, type: responsibility_center. Only for operation update_journal_line. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | No | |
| results | No | |
| success | No | |
| requests | No | |
| statuses | No | |
| completed | No | |
| operation | Yes | |
| requestId | No | |
| finalState | No | |
| lineNumber | No | |
| transactionId | Yes | |
| primaryRequestId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations establish only mutation (readOnlyHint: false) and non-idempotency, so the description adds useful behavioral context: it flags the side effect 'recompute dependent cost-basis records', the asynchronous requestId flow, and the terminal-state wait semantics. It does not enumerate all possible side effects or permission/rollback behavior, but for a tool with these annotations this is a solid disclosure level.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences front-load the tool's purpose and then compactly organize the operation modes, lookup requirement, and async completion behavior. Every clause maps to actionable information for the agent, with no filler or repeated schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's 20-parameter complexity, the description covers the decision space (which operation, how to prepare via read/line-number/lookup, and how to handle completion) while the 100%-covered schema handles field-level detail and the output schema handles return values. Nothing an agent needs to call the tool correctly is missing at the usage level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every parameter carries an 'Only for operation...' note, so the schema already performs the heavy lifting. The description only groups parameters into the three operations and adds workflow hints; it does not explain parameter values or constraints beyond what the schema already states, matching the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource: 'Change one accounting transaction (a Portfolio Transaction)'. It then enumerates the three distinct operations (update_fields, update_journal_line, set_fmv_override) with their exact targets, so an agent can immediately distinguish this from sibling transaction tools such as merge_transactions or split_transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear operation-by-operation selection context, including the advice to 'read the line number first' and 'look up selectable values with list_journal_line_assignment_options'. It also tells the agent when to track requestIds versus pass waitForCompletion, but it never explicitly names sibling tools or states when not to use this tool, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
full_resyncFull Resync (DANGER — wipes & rebuilds history)ADestructiveInspect
DANGER: delete and rebuild the selected wallet transaction, journal, and cost-basis history from source data. Use only after the user explicitly requests this destructive reset and accepts the consequences; use incremental_sync for routine new activity.
| Name | Required | Description | Default |
|---|---|---|---|
| wallets | No | Optional exact wallet pairs; omit to wipe and rebuild every wallet in the portfolio | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| requestId | Yes | |
| portfolioSlug | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the description's 'DANGER' warning aligns with and reinforces them. The description adds valuable context beyond annotations: it specifies exactly what gets destroyed (transaction, journal, and cost-basis history) and that the operation rebuilds from source data. It doesn't detail side effects like irreversible loss or rate limits, but the explicit warning and scope of destruction are strong. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the danger warning, and packs the essential scope, condition, and alternative into minimal words. Every sentence earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive tool with an output schema and full parameter documentation, the description covers the critical context: what is destroyed, when to use it, and the alternative. It could mention that the operation is irreversible or that it affects all wallets when omitted, but the schema already notes the optional wallets behavior and the description's warning is strong. Minor gap: no explicit statement about irreversibility beyond 'DANGER' and 'destructive reset'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds the important semantic that omitting 'wallets' wipes and rebuilds every wallet in the portfolio, which is a critical behavioral nuance not fully captured in the schema's 'Optional' wording. However, it doesn't add detail on workspaceRef/portfolioRef beyond what the schema provides, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('delete and rebuild'), a clear resource ('selected wallet transaction, journal, and cost-basis history'), and the source of data ('from source data'). It also explicitly distinguishes itself from incremental_sync, making it easy for an agent to select this tool for destructive resets versus routine syncs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use only after the user explicitly requests this destructive reset and accepts the consequences' and names the alternative 'incremental_sync' for routine new activity. This gives clear when-to-use and when-not-to-use guidance, plus a direct alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_accounting_referenceGet Accounting ReferenceARead-onlyIdempotentInspect
Look up valid accounting values—including operation types, transaction statuses, cost-basis methods, and lot event kinds—before classifying or filtering; use the returned exact values instead of guessing.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| operationTypes | Yes | |
| costBasisLotMethods | Yes | |
| transactionStatuses | Yes | |
| costBasisLotEntryKinds | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful context about what kind of values are returned and their role in classification/filtering, but does not disclose additional behavioral details such as output structure, which is partially covered by the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence states the purpose, enumerates the value categories, and gives usage guidance. Every clause earns its place, with no redundant wording or repetition of schema or annotation information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only reference lookup with an output schema and full annotation coverage, the description is complete. It tells the agent what the tool returns, when to call it, and how to use the results, leaving no critical gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is nothing for the description to explain about inputs. Per the baseline for zero-parameter tools, a score of 4 is appropriate; the description instead focuses on the meaning and use of the returned values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('look up') and names the resource ('valid accounting values'), then enumerates concrete categories: operation types, transaction statuses, cost-basis methods, and lot event kinds. This clearly distinguishes it from sibling tools like get_filter_options or list_accounting_rules.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: 'before classifying or filtering,' and advises using the returned exact values instead of guessing. It does not mention alternative tools or when not to use it, so it falls just short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_asset_positionGet Asset PositionARead-onlyIdempotentInspect
Summarize one cryptocurrency or token across every wallet with quantity, cost basis, market value, unrealized gain or loss, and portfolio totals. This covers wallet holdings rather than all ledger accounts; request a balance-sheet report for a complete accounting statement.
| Name | Required | Description | Default |
|---|---|---|---|
| assetRef | Yes | Asset symbol or canonical asset id | |
| includeSpam | No | Also match assets marked as spam | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| asset | Yes | |
| totals | Yes | |
| currency | Yes | |
| pricedAt | No | |
| perWallet | Yes | |
| unitPrice | No | |
| valuation | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds real behavioral context beyond that: the result set is limited to wallet holdings and excludes non-wallet ledger accounts, which directly affects whether calling this tool answers the user's question.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, with the primary purpose and the output fields front-loaded before the scope caveat. Every clause carries information an agent can act on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a 100%-covered schema and an existing output schema, the description only needs to add scope and routing, which it does. The wallet-vs-ledger boundary and the pointer to a fuller report are exactly the missing pieces an agent would otherwise have to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all four parameters (assetRef, portfolioRef, workspaceRef, includeSpam) are already documented in the schema. The description adds no per-parameter meaning beyond implying that assetRef targets a single asset; baseline 3 applies when the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (summarize) and resource (one crypto asset across every wallet) and enumerates the exact outputs (quantity, cost basis, market value, unrealized gain/loss, totals). The scope statement 'covers wallet holdings rather than all ledger accounts' cleanly separates it from the ledger/accounting siblings such as get_lot_ledger and get_journal_entry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit exclusion ('wallet holdings rather than all ledger accounts') and points the agent to an alternative ('request a balance-sheet report'). It stops short of naming a concrete sibling tool, so the agent must infer that the balance-sheet report is request_report_export.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_filter_optionsGet Filter OptionsARead-onlyIdempotentInspect
List the available values for one portfolio filter—such as accounts, wallets, assets, transaction status, or warnings—before building a filtered query.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses. Only for filterName portfolio-transaction-addresses; required for each. | |
| filter | No | Human-readable Portfolio Transactions filter expression. Only for filterName portfolio-transaction-status-counts. | |
| search | No | Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields. Not for filterName accounts, portfolio-transaction-period. | |
| pageSize | No | Requested number of resources to return. Oversized values are clamped to the route limit. Not for filterName accounts, portfolio-transaction-period. | |
| selected | No | Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array. Not for filterName accounts, portfolio-transaction-period. | |
| pageToken | No | Opaque token returned by the previous list response. Not for filterName accounts, portfolio-transaction-period. | |
| filterName | Yes | Public filter option provider name. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | |
| assets | No | |
| period | No | |
| origins | No | |
| wallets | No | |
| statuses | No | |
| subTypes | No | |
| hierarchy | No | |
| currencies | No | |
| pagination | No | |
| cacheStatus | Yes | |
| accountTypes | No | |
| revisionHash | Yes | |
| accountNumbers | No | |
| includeNoWallet | No | |
| normalBalanceTypes | No | |
| paymentLabelStates | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is covered structurally. The description adds only the intent (feed into a filtered query) and does not mention pagination behavior, provider-dependent result shapes, or the fact that behavior varies sharply by filterName.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and resource, then a concrete example list and the usage timing. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be described, and the schema fully documents all 9 parameters. The description is complete enough to call the tool correctly, with only a minor gap around the pagination/hydration workflow it participates in.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema itself carries rich per-parameter, per-filterName constraints (mode, filter, search, pageSize, selected, pageToken), so the description has little to add. It merely echoes the filterName example set qualitatively, which is the baseline 3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list) and resource (available values for a portfolio filter), and gives concrete examples of what a filter can be (accounts, wallets, assets, status, warnings). It is clearly distinct from sibling 'list_wallets'/'list_portfolios' tools, though it never explicitly names an alternative for contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'before building a filtered query' implies a usage context, so the agent can infer this is a metadata/lookup step. However, there is no explicit when-to-use / when-not-to-use guidance and no alternative tool is named for cases where the agent already knows the filter value.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_helpGet HelpARead-onlyIdempotentInspect
Find practical Tokenbooks instructions or accounting guidance. Pass query to search by topic (MCP workflow, cost basis, fair market value, gas fees, stablecoins, ...), or pass slug to open one article directly using a slug from a previous get_help search result.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Help article slug to open directly, from a previous get_help search result. Omit when using query. | |
| limit | No | Maximum number of search results, only used with query | |
| query | No | Search query for Tokenbooks instructions or accounting guidance. Omit when using slug. |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | No | |
| slug | No | |
| tags | No | |
| error | No | |
| query | No | |
| title | No | |
| message | No | |
| results | No | |
| summary | No | |
| audience | No | |
| relatedTools | No | |
| relatedConcepts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the read-only behavior is covered. The description adds a meaningful behavioral detail about the slug coming from a previous get_help search result, but otherwise does not go beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, introduces the purpose immediately, and gives the two usage modes in one compact sentence. Every part earns its place and the topic examples are useful without bloating the text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only tool with no required parameters, an output schema, and full schema coverage, the description is complete enough. It could mention mutual exclusivity of query and slug more forcefully, but the schema already covers that and the overall context is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already documented. The description adds semantic value by explaining the relationship between query and slug: query searches by topic, while slug opens an article directly. This is more than merely repeating schema text.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Find practical Tokenbooks instructions or accounting guidance.' It also distinguishes the two primary modes (query search vs. direct slug access), which clearly separates this help tool from the financial operation siblings listed in context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage guidance: pass a query to search by topic, or pass a slug to open a specific article from a previous search. It does not name alternative tools or explicit exclusions, but the context is clear and the instructions are actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_journal_entryGet Journal EntryARead-onlyIdempotentInspect
Read every debit and credit line in one journal entry—the detailed accounting record—and trace each line to its cost-basis records and blockchain movements.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| journalEntryId | Yes | Journal entry ID |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| memo | No | |
| lines | Yes | |
| status | Yes | |
| subType | No | |
| timestamp | Yes | |
| systemNotes | No | |
| isAdjustment | Yes | |
| operationType | No | |
| portfolioTransactionId | No | |
| adjustmentJournalImportProvenance | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish that this is read-only, idempotent, and non-destructive. The description adds meaningful context by disclosing that each line is traced to cost-basis records and blockchain movements, which goes beyond the annotations. No contradiction with the annotations was found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the core action and then adds useful tracing context. No filler, no repetition of schema information, and every clause contributes to understanding the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and annotations covering safety and idempotency, the description does not need to explain return values or side effects. It is complete for a read operation, though explicit routing guidance relative to sibling tools would make it fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all three required parameters with descriptions, including exact name/slug semantics for workspace and portfolio and the journal entry ID. The description does not add parameter-level detail beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Read every debit and credit line in one journal entry', giving a specific verb, resource, and scope. 'Detailed accounting record' clarifies what a journal entry is, and the tracing clause distinguishes this tool from broader list/lot tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving a single journal entry's full detail and tracing it to related records. However, it does not state explicit when-to-use conditions, exclusions, or alternatives such as get_lot_ledger, so guidance remains implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_lot_ledgerGet Cost-Basis Lot LedgerARead-onlyIdempotentInspect
Trace paginated cost-basis acquisition, disposal, transfer, and adjustment history across a portfolio, optionally narrowed by asset, wallet, event kind, accounting transaction, or date.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1 | |
| sort | No | Single public sort field. Prefix with - for descending. Supported fields: timestamp, diff, value, price | |
| limit | No | Maximum items to return, maximum 100. Preferred MCP pagination field. | |
| filter | No | Public AIP-160 filter string. Supported fields: id lot identifier (=, !=, in, not in), entry_id ledger-row identifier (=, !=, in, not in), asset_id (=, !=, in, not in), asset_spam (= true or false), entry_kind (=, !=, in, not in), wallet (=, !=, in, not in using chainId:address), portfolio_transaction_id (=, !=, in, not in), timestamp (=, !=, >, >=, <, <= with ISO datetimes). The asset display name is not filterable. | |
| toDate | No | Optional ISO timestamp upper bound | |
| chainId | No | Exact chain ID when filtering to one wallet; requires walletAddress | |
| assetRef | No | Deprecated compatibility selector for asset symbol or asset id. Prefer filter=asset_id. | |
| fromDate | No | Optional ISO timestamp lower bound | |
| pageSize | No | Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls. | |
| entryKind | No | Filter by lot entry kind (any of) | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| walletAddress | No | Exact case-sensitive wallet address when filtering to one wallet; requires chainId |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| pagination | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the useful behavioral trait of pagination ('paginated'), which is not in the annotations, but it does not disclose specifics like page-based caveats or ledger-entry semantics beyond what the schema and output schema provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence that front-loads the core purpose and then appends the optional narrowing clause. Every word earns its place; there is no redundant filler or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a read-only, paginated query with a rich output schema, strong annotations, and 100% parameter documentation. The description covers the core purpose, scope, and optional filters, while the structured data covers return values and parameter syntax, so nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 13 parameters thoroughly. The description adds semantic grouping by listing the narrowing dimensions (asset, wallet, event kind, accounting transaction, date), which maps cleanly to filter fields and helps an agent understand the tool's expressive scope.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Trace') and identifies a distinct resource: a cost-basis lot ledger spanning acquisitions, disposals, transfers, and adjustments. This clearly distinguishes it from siblings like get_journal_entry or list_portfolio_transactions without requiring schema inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by framing the tool as a portfolio-wide ledger history query with optional narrowing dimensions. It does not explicitly name alternatives or exclusion conditions, but the purpose is specific enough that an agent can infer when it applies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_portfolioGet PortfolioARead-onlyIdempotentInspect
Read one portfolio's settings and accounting policy by exact name or slug, including its financial reporting framework and legal entity type. If legalEntityType is omitted, it is unset.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| slug | Yes | |
| currency | Yes | |
| createdAt | Yes | |
| updatedAt | Yes | |
| legalEntityType | No | |
| hasPostedActivity | Yes | |
| reportingTimezone | Yes | |
| accountingConfiguration | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds a genuine behavioral nuance beyond the annotations: that legalEntityType is returned unset when omitted, which tells the agent how to interpret a missing field.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the core action and scope. The trailing sentence about legalEntityType is slightly tangential to the call itself but is short and useful, so nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be enumerated, and the description still sketches what is returned. For a simple two-required-param read tool with full annotation coverage, the only missing piece is explicit routing versus list_portfolios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters ('exact name or slug') are already documented in the schema, so the description adds nothing beyond it. Baseline 3 for full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb (read) plus resource (one portfolio's settings and accounting policy) with a clear scope qualifier (by exact name or slug). It also names the content domains (financial reporting framework, legal entity type). It does not explicitly differentiate from the sibling list_portfolios, which is the obvious ambiguity, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Read one portfolio... by exact name or slug' implies a single-record lookup, distinguishing it implicitly from bulk listing, but no alternative tool is named and no when-not-to-use condition is given. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_portfolio_balancesGet Portfolio BalancesARead-onlyIdempotentInspect
Check whether each wallet's computed token balances match its latest synchronized snapshot; returns per-wallet match status, token count, last transaction time, and an overall match flag.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| allBalancesMatch | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds meaningful behavioral context by explaining the comparison against the latest synchronized snapshot and enumerating the returned per-wallet fields, using non-mutating language.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core purpose and immediately lists the returned output. Every clause adds value and there is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the read-only annotations, complete parameter schema, and output schema, the description supplies the core semantics needed for invocation. The only notable gap is the absence of explicit guidance on when to use this tool instead of related sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are fully described in the schema as exact names or slugs, so schema coverage is 100%. The description does not add parameter-specific semantics, which matches the baseline expectation when the schema carries the full burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it checks whether each wallet's computed token balances match its latest synchronized snapshot. It clearly distinguishes this from siblings like get_portfolio or get_sync_status by focusing on balance reconciliation and per-wallet match status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for verifying balance consistency, but it does not explicitly say when to choose this tool over related siblings such as get_portfolio_issue_summary or get_sync_status. No exclusion criteria or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_portfolio_issue_summaryGet Portfolio Issue SummaryARead-onlyIdempotentInspect
Summarize accounting problems that need review with exact counts for uncategorized, errored, and spam-related transactions, plus examples of uncategorized and errored transactions.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| counts | Yes | |
| isClean | Yes | |
| samples | Yes | |
| errorsByType | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds some behavioral context about returning exact counts and examples, but it does not disclose anything beyond that, such as whether results are cached, period-scoped, or limited in scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler. It front-loads the main purpose, then enumerates the specific output categories and examples. Every phrase contributes to understanding the tool's behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only summary tool with fully described parameters, a complete output schema, and safety annotations, the description is sufficient for an agent to select and invoke the tool correctly. Nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (workspaceRef, portfolioRef) are already described as exact names or slugs. The description adds no additional parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('summarize accounting problems') and the precise resource scope: portfolios with uncategorized, errored, and spam-related transactions. It clearly identifies what the tool produces, though it does not explicitly contrast itself with sibling summary tools like get_portfolio_balances or get_portfolio.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is implied: use this when someone needs a review-level summary of portfolio accounting issues with counts and examples. However, it gives no explicit when-to-use or when-not-to-use guidance relative to siblings such as list_portfolio_transactions, preview_transaction_classification, or get_filter_options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_request_statusGet Request StatusARead-onlyIdempotentInspect
Check the status of any queued background work — report generation, wallet sync, rule application, or a transaction change — using the requestId returned when it was queued. Works for every request kind; there is no separate report-status tool.
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes | Request ID returned by the call that queued the work (e.g. incremental_sync, full_resync, request_report_export) | |
| portfolioRef | No | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| transactionId | No | Optional transaction ID that caused the async request, for agent context |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| type | No | |
| error | No | |
| result | No | |
| status | Yes | |
| outcome | No | |
| subject | No | |
| progress | No | |
| createdAt | Yes | |
| requestId | Yes | |
| updatedAt | No | |
| finishedOn | No | |
| appProgress | No | |
| completedAt | No | |
| returnValue | No | |
| progressPercent | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds useful context about the requestId and the universality of request kinds, but does not disclose additional behavioral details such as response semantics or polling behavior. This is adequate but not exceptionally transparent beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler; the core action and required identifier are front-loaded, followed by a scope-clarifying statement. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for tool selection and invocation: it names the exact resource, the key identifier, the full range of request kinds, and confirms there is no separate report-status tool. The output schema and annotations cover return values and safety, so nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents each parameter well, including examples for requestId. The description reinforces that the requestId comes from the original queuing call but adds little parameter meaning beyond what the schema provides; it reaches the baseline expected for fully covered schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Check the status of any queued background work' via a requestId, and gives concrete examples (report generation, wallet sync, rule application, transaction change). It also clarifies scope with 'Works for every request kind; there is no separate report-status tool,' which helps distinguish it from other tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly establishes when to use the tool: after work has been queued and a requestId has been returned. It also preemptively rules out looking for a report-status tool, though it does not explicitly contrast this with sibling get_sync_status, so it stops short of a full when-not/alternative guide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_server_infoGet Server InfoARead-onlyIdempotentInspect
Learn what this accounting server covers before connecting: supported blockchains and fiat sources, accounting standards, plans with their capacity limits and what each tier adds, how to sign up, connection endpoint and authentication methods, and what it deliberately leaves out. Needs no credentials, so call it first when evaluating a connection, answering what Tokenbooks costs or includes, or debugging a connection.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| notes | Yes | |
| title | Yes | |
| pricing | Yes | |
| summary | Yes | |
| coverage | Yes | |
| endpoint | Yes | |
| limitations | Yes | |
| authentication | Yes | |
| gettingStarted | Yes | |
| documentationUrl | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety. The description adds behavioral context beyond that: it requires no credentials, which is a practical access trait, and it states the tool 'deliberately leaves out' certain content, setting expectations about scope. This is valuable disclosure without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the purpose and a compact list of what the tool covers. The second sentence adds usage guidance and a note about credentials. Every word earns its place; it is concise yet information-dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and an output schema is present (so return format is presumably documented), the description covers everything an agent needs: the scope of information, the fact that no credentials are required, and clear invocation scenarios. It even mentions exclusions, making it a complete overview tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so schema coverage is trivially 100% and there is nothing for the description to explain about inputs. Per the rubric, a baseline of 4 applies for zero-parameter tools. The description does not need to add parameter semantics, and it doesn't.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear purpose: to learn what the accounting server covers before connecting. It enumerates specific content areas (blockchains, fiat sources, accounting standards, plans, sign-up, endpoint, auth methods, and exclusions) and explicitly frames it as a first-step discovery tool. This clearly distinguishes it from siblings like list_chains or get_accounting_reference, which are more targeted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage guidance: 'call it first when evaluating a connection, answering what Tokenbooks costs or includes, or debugging a connection.' It also notes that no credentials are needed, implying it is a safe, low-friction starting point. It does not explicitly name alternatives, but the role as a preliminary overview is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sync_statusGet Sync StatusARead-onlyIdempotentInspect
Check sync health across every wallet in a portfolio. Current activity takes priority over each latest finished result; safe codes and messages tell you whether to retry or reconnect credentials.
| Name | Required | Description | Default |
|---|---|---|---|
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| wallets | Yes | |
| startedAt | No | |
| updatedAt | Yes | |
| completedAt | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context beyond annotations: current activity takes priority over the latest finished result, and codes/messages indicate whether to retry or reconnect credentials.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The core purpose is front-loaded in the first sentence, and the second adds meaningful behavioral detail without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a simple read-only tool with fully documented required parameters, an output schema, and annotations covering safety and idempotence, the description is complete. Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: both required parameters are documented as exact name or slug. The description does not add parameter-level meaning beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Check') and resource ('sync health across every wallet in a portfolio'), making the tool's purpose clear. It does not explicitly name sibling tools like full_resync or incremental_sync to distinguish the status check from sync actions, but the resource scope and read-only framing differentiate it well enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives such as full_resync or incremental_sync. The description implies the tool is for checking sync health, but it does not state when to prefer it, when not to use it, or which sibling covers other cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
import_adjustment_journalsImport Adjustment JournalsAInspect
Preview or post a complete CSV or XLSX file of balanced manual adjustment journals for one portfolio. Preview first; post only after reviewing every blocking issue, then resend the unchanged source with its preview token and any resolutions.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | preview: Parse the file and report what it would import, writing nothing. Always preview before posting. post: Commit the import that a preview of the same file produced. | |
| fileName | Yes | Original CSV or XLSX source filename. | |
| resolutions | No | Only for action post; required for each. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| previewToken | No | Token returned by the matching preview, proving the file has not changed since. Only for action post; required for each. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| contentBase64 | Yes | CSV or XLSX source file content as base64-encoded bytes (max 5 MiB). |
Output Schema
| Name | Required | Description |
|---|---|---|
| action | Yes | |
| issues | No | |
| summary | No | |
| journals | Yes | |
| importRef | No | |
| readyToPost | No | |
| previewToken | No | |
| createdJournalCount | No | |
| omittedJournalCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only (readOnlyHint=false) and not idempotent (idempotentHint=false). The description adds the two-phase requirement of preview-before-post and the need to resend the source with a preview token, which is behavioral context beyond annotations. However, it does not disclose potential side effects of posting, error conditions, or what happens if the file is unbalanced—only that 'preview' reports issues. Given the annotation coverage, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the purpose and immediately provides the key workflow. Every clause carries essential information: the input type, the two actions, the requirement for balanced journals, and the preview-then-post sequence. There is no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 7 parameters, a two-phase workflow, and an output schema, the description captures the essential sequence (preview → review → post) and the critical constraint of resending the unchanged source with the preview token. The schema handles parameter details, and the output schema covers return values. The only minor gap is not explicitly explaining what a 'blocking issue' is, but that is inherent to the preview report and does not hinder an agent from using the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage—every parameter is documented with its own description, including the 'action' enum, 'previewToken' pattern, and 'resolutions' structure. The tool description adds no parameter-level information beyond what the schema already provides, so it does not elevate the meaning. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb-resource pair: 'Preview or post a complete CSV or XLSX file of balanced manual adjustment journals for one portfolio.' It distinguishes between the two modes (preview vs. post) and specifies the exact input type and scope, making it unambiguous what this tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an explicit workflow: 'Preview first; post only after reviewing every blocking issue, then resend the unchanged source with its preview token and any resolutions.' This tells the agent when to preview and when to post, and outlines the required sequence. It does not mention alternatives or when not to use this tool, but the workflow guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
incremental_syncIncremental SyncAInspect
Pull only recent blockchain and wallet activity while keeping all existing transaction and accounting history; use this routine refresh before reports or when new activity is missing, then track its requestId with get_request_status.
| Name | Required | Description | Default |
|---|---|---|---|
| wallets | No | Optional exact wallet pairs; omit to sync every wallet in the portfolio | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| requestId | Yes | |
| portfolioSlug | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey safety and open-world traits, and the description adds useful behavioral context: the operation is asynchronous (requestId) and preserves existing transaction/accounting history. It does not discuss idempotency implications despite idempotentHint being false, but the annotation lowers that burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences deliver the core behavior, the trigger context, and the follow-up step with zero filler. Key information is front-loaded and every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers when to use the tool, what it preserves, and how to track the result; the schema covers parameters and an output schema is present. The only notable gap is that it does not explicitly route the agent to full_resync when a complete rebuild is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all three parameters. The description adds no param-level detail beyond what the schema provides, which matches the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Pull only recent blockchain and wallet activity' while explicitly protecting existing transaction and accounting history. This naturally distinguishes the tool from full_resync and other sync-related siblings without needing to open their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete triggers: 'use this routine refresh before reports or when new activity is missing' and tells the agent to track the resulting requestId with get_request_status. It does not explicitly name full_resync as the alternative for full rebuilds or state when not to use the tool, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_accounting_rulesList Accounting RulesARead-onlyIdempotentInspect
Find saved accounting rules, filter them, or recover the exact ruleRef needed to preview, edit, or delete one rule.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Requested number of resources to return. Oversized values are clamped to the route limit. | |
| search | No | Free-text match against rule names. | |
| enabled | No | Keep only enabled rules, or only disabled ones. Omit to return both. | |
| ruleRef | No | Saved rule handle, from list_accounting_rules. | |
| wallets | No | Wallet selectors as chainId:walletAddress values. | |
| assetIds | No | Asset ids as CSV or repeated query values. | |
| pageToken | No | Opaque token returned by the previous list response. | |
| actionTypes | No | Action types as CSV or repeated query values. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| accountNumbers | No | Ledger account numbers as CSV or repeated query values. | |
| conditionFields | No | Condition fields as CSV or repeated query values. | |
| counterpartyNames | No | Counterparty names as CSV or repeated query values. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| pagination | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the practical purpose of recovering ruleRefs for downstream operations, but does not disclose additional behavioral traits such as pagination behavior or filtering side effects. It does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the core action ('Find saved accounting rules, filter them') and then states the purpose. There is no filler, repetition of schema details, or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a high-complexity list tool with 13 parameters, the schema fully covers parameter semantics and the output schema covers return shape; annotations cover the safety profile. The description supplies the missing contextual piece—why and when to call it, namely to obtain the ruleRef needed for preview/edit/delete. It does not explicitly mention pagination, but the schema and output schema are rich enough to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 13 parameters, including limit clamping, search matching, enabled filtering, and CSV/repeated value formats. The description adds no parameter-level meaning beyond what the schema provides, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('Find', 'filter', 'recover') with a clear resource ('saved accounting rules') and states the downstream purpose: obtaining the exact ruleRef needed to preview, edit, or delete a rule. This distinguishes it from sibling tools like edit_accounting_rules or apply_accounting_rules by framing it as the read/lookup operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly indicates when to use this tool: when you need to find saved rules, filter them, or recover the ruleRef required for preview/edit/delete. It does not explicitly name alternatives or exclusions, but the usage context is unambiguous for a list/lookup tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_chainsList Supported ChainsARead-onlyIdempotentInspect
Find which blockchains support wallet syncing by name, Tokenbooks chain slug, or numeric EVM network ID; results identify EVM networks whose shared 0x address can be added together with add_wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Optional chain name, slug, or EVM chain id (e.g. "Optimism", "optimism-mainnet", "10") | |
| evmOnly | No | When true, return only EVM-compatible chains |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, so safety is covered. The description adds useful result semantics by stating that results identify EVM networks whose shared 0x address can be added with add_wallet, and it clarifies that the query can be a name, slug, or EVM ID. It does not disclose pagination, default behavior when no query is given, or response size, but for a simple lookup with these annotations this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, dense sentence that front-loads the core purpose, then covers query formats and the result's relationship to add_wallet. Every clause earns its place; there is no filler, tautology, or redundant restatement of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple, read-only, two-parameter tool with an output schema present, the description is complete. It explains what the tool finds, the accepted query forms, the EVM filtering concept, and how results connect to add_wallet. The annotations cover safety and idempotency, and the output schema covers return shape, so no critical operational detail is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by specifying 'Tokenbooks chain slug' rather than just 'slug', and by explaining that the query can be a 'numeric EVM network ID'. It does not elaborate on evmOnly beyond what the schema already states, but the added specificity for query formats raises it slightly above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('Find which blockchains support wallet syncing') and lists the three query formats (name, slug, EVM network ID). It also distinguishes the tool's purpose from siblings by tying the results to add_wallet, so an agent can tell it apart from list_wallets or get_server_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: when you need to discover supported chains for wallet syncing, optionally filtering by EVM networks, and before adding a shared 0x address via add_wallet. It does not explicitly state when not to use it or name alternatives, but the integration note provides enough directional guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_journal_line_assignment_optionsList Journal Line Assignment OptionsARead-onlyIdempotentInspect
Find the ledger accounts, saved counterparties, or responsibility centers (departments, projects, or other reporting groups) that can be assigned to an accounting entry line. Pass type to choose the lookup: ledger_account returns each account's accountNumber, counterparty returns the counterparty name, and responsibility_center returns its type key and center name.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1 Only for type counterparty. | |
| type | Yes | ledger_account: Ledger accounts assignable to a journal line. counterparty: Saved vendors, people, or organizations assignable to a journal line. responsibility_center: Departments, projects, or other reporting groups (responsibility centers) assignable to a journal line. | |
| limit | No | Maximum items to return, maximum 100. Preferred MCP pagination field. Only for type counterparty. | |
| search | No | Filter by name (also matches account number for ledger accounts) | |
| pageSize | No | Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls. Only for type counterparty. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | Yes | |
| total | No | |
| hasMore | No | |
| accounts | No | |
| counterparties | No | |
| responsibilityCenters | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds useful behavioral detail beyond the schema by specifying what each type returns: accountNumber for ledger_account, counterparty name, and type key plus center name for responsibility_center. This gives the agent a concrete expectation of the result shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first states the tool's purpose and scope, and the second explains the type-driven behavior. There is no filler, and the most important usage signal (`Pass type`) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only lookup tool with seven fully documented parameters, rich annotations, and an output schema, the description covers everything an agent needs to select and invoke it correctly. Pagination, deprecation, and validation details are already in the schema, so the description does not need to repeat them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by mapping each `type` enum value to its corresponding return fields, which is not stated in the parameter descriptions. It does not repeat pagination details, but those are already fully documented in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb ('Find') and a concrete resource: ledger accounts, saved counterparties, or responsibility centers assignable to an accounting entry line. It also distinguishes the three lookup modes by name, so an agent can tell exactly what this tool returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly instructs the agent to pass `type` to choose the lookup, which covers the core usage decision. No sibling tool appears to overlap with this function, so the absence of explicit when-not-to-use guidance is acceptable; the context is clear even though exclusions are not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_portfoliosList PortfoliosARead-onlyIdempotentInspect
List portfolios available in a workspace, or search by name or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1 | |
| limit | No | Maximum items to return, maximum 100. Preferred MCP pagination field. | |
| query | No | Optional portfolio name or slug search query | |
| pageSize | No | Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls. | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| pagination | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds workspace scoping and the search capability, but it doesn't disclose pagination behavior or ordering; with annotations handling the main safety context, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste. It immediately conveys the resource, the workspace scope, and the optional search behavior without filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Full schema coverage documents all parameters, an output schema defines the return shape, and annotations cover the read-only/idempotent safety profile. The description supplies the remaining context—workspace scope and search intent—leaving nothing critical missing for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented in the schema. The description's 'by name or slug' is redundant with the query parameter's schema description and adds no new parameter meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (List) and resource (portfolios), scopes it to a workspace, and mentions an optional name/slug search. This clearly sets it apart from sibling tools like get_portfolio (single portfolio detail) and list_portfolio_transactions (a different resource).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use this tool: when you need to list portfolios in a workspace, with optional search. It doesn't explicitly say when not to use it, such as directing agents to get_portfolio for a single portfolio lookup, so it stops just short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_portfolio_transactionsList Portfolio TransactionsARead-onlyIdempotentInspect
Find accounting transactions—called Portfolio Transactions in Tokenbooks—for review or reconciliation; filter by status, type, errors, spam, wallet, or asset, optionally attaching grouped contributing raw source records (10-record page cap). Pass transactionId to explain full details of one transaction instead: classification, journal entry, cost-basis links, and (rawWithDetails) its sanitized event logs and contract calls.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Timestamp sort. Prefix with - for descending order. | -timestamp |
| limit | No | Maximum Portfolio Transactions to return, maximum 100. | |
| isSpam | No | true: transfers involve spam tokens; false: non-spam only | |
| search | No | Free-text search over memo, tx hash, transaction ID | |
| status | No | Filter by status, e.g. ["POSTED"] | |
| toDate | No | Optional ISO timestamp upper bound | |
| txHash | No | Filter by exact on-chain transaction hash | |
| address | No | Match transfer from/to address (case-insensitive) | |
| chainId | No | Public wallet chain ID. | |
| hasLots | No | true: produced cost-basis lots; false: did not | |
| include | No | Include grouped contributing raw source transactions; rawWithDetails adds sanitized provider details and requires transactionId | |
| subType | No | Filter by operation sub-type (case-insensitive) | |
| chainIds | No | Optional chain ID filters | |
| fromDate | No | Optional ISO timestamp lower bound | |
| hasError | No | true: has a processing error; false: error-free | |
| maxValue | No | Maximum transfer fiat quote value (inclusive), as a decimal string | |
| minValue | No | Minimum transfer fiat quote value (inclusive), as a decimal string | |
| assetRefs | No | Filter by asset symbol (case-insensitive) | |
| errorType | No | Filter by error/warning code, e.g. ["FmvNotAvailable"] | |
| pageToken | No | Opaque token returned by the previous list response. | |
| counterparty | No | Filter by counterparty name (case-insensitive) | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| operationType | No | Filter by operation type, e.g. ["UNCATEGORIZED"] | |
| transactionId | No | Look up one transaction by handle instead of listing | |
| walletAddress | No | Public wallet address on the selected chain. | |
| defiPositionKey | No | Filter by protocol-defined DeFi position key | |
| hasJournalEntry | No | true: has a non-empty journal entry; false: does not | |
| defiPositionWalletAddress | No | Filter by DeFi position wallet address | |
| defiPositionWalletChainId | No | Filter by DeFi position wallet chain ID | |
| responsibilityCenterTypeKeys | No | Filter by journal-line responsibility-center type key (e.g. primary, goal; from list_journal_line_assignment_options) |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | |
| data | No | |
| memo | No | |
| tags | No | |
| status | No | |
| subType | No | |
| timestamp | No | |
| pagination | No | |
| resultType | Yes | |
| systemNotes | No | |
| errorDetails | No | |
| errorMessage | No | |
| journalEntry | No | |
| walletSource | No | |
| operationType | No | |
| classification | No | |
| fileAttachments | No | |
| rawTransactions | No | |
| intercompanyPair | No | |
| walletOperations | No | |
| portfolioTransactionContext | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds valuable behavioral detail: the optional grouped raw source records have a 10-record page cap, and rawWithDetails provides sanitized event logs and contract calls. This goes beyond annotations and informs the agent about data volume and detail levels. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the purpose, and conveys the two operational modes (list vs. single transaction) efficiently. It avoids unnecessary verbosity while covering the key behavioral aspects. Slightly more structure (e.g., bullet points) could help, but it is concise and readable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (31 parameters, output schema present), the description covers the essential usage modes and filter categories without over-explaining. It mentions the page cap for raw records and the detailed single-transaction mode. The output schema handles return structure, so the description doesn't need to explain that. Missing explicit notes on pagination (pageToken) and sorting are covered in the schema. Overall, it is complete enough for an agent to correctly invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all 31 parameters, so the schema already documents each filter and option. The description adds only a high-level grouping of filter types (status, type, errors, spam, wallet, asset) and the page cap for the include parameter. It doesn't add meaning for individual parameters beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to find accounting transactions (Portfolio Transactions) for review or reconciliation, and lists the filter dimensions (status, type, errors, spam, wallet, asset). It distinguishes the single-transaction lookup mode via transactionId. However, it doesn't explicitly differentiate from sibling tools like list_raw_transactions or get_journal_entry, though the 'raw source records' phrasing hints at that distinction. Overall, purpose is specific and clear, but sibling differentiation is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context for when to use the tool (review/reconciliation) and explicitly mentions the alternative of passing transactionId for a detailed single-transaction explanation. However, it doesn't give explicit 'when not to use' guidance or compare against other list/get tools. The usage context is clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_raw_transactionsList Raw TransactionsARead-onlyIdempotentInspect
Find compact source transactions first, called Raw Transactions in Tokenbooks, including unprocessed or partially linked activity. Pass rawTransactionId to show how one maps to wallet movements and accounting transactions; add includeDetails for its sanitized event logs and decoded contract calls (untrusted provider evidence).
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Timestamp order. Use timestamp for ascending or -timestamp for descending; defaults to -timestamp. | -timestamp |
| limit | No | Maximum raw transaction summaries to return, maximum 100. | |
| toDate | No | Latest transaction timestamp to include, as an ISO 8601 datetime. | |
| txHash | No | Exact on-chain transaction hash. | |
| chainId | No | Blockchain to filter by, such as eth-mainnet. Call list_chains for the supported set. | |
| chainIds | No | Blockchains to filter by, such as eth-mainnet. Call list_chains for the supported set. | |
| fromDate | No | Earliest transaction timestamp to include, as an ISO 8601 datetime. | |
| pageToken | No | Opaque token returned by the previous list response. | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. | |
| walletAddress | No | Wallet to filter by. Supply chainId alongside it. | |
| includeDetails | No | With rawTransactionId, also return blockchain event logs and decoded contract calls | |
| processingState | No | Keep only source transactions in this processing state. | |
| rawTransactionId | No | Look up one source transaction by handle instead of listing | |
| includeSpamTokens | No | Include transactions whose operations contain only spam tokens; defaults to false. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | |
| data | No | |
| hash | No | |
| memo | No | |
| wallet | No | |
| details | No | |
| timestamp | No | |
| pagination | No | |
| resultType | Yes | |
| blockHeight | No | |
| processingState | No | |
| walletOperations | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already carry readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds value by disclosing that raw transactions may be 'unprocessed or partially linked' and that includeDetails returns 'sanitized event logs and decoded contract calls' from an 'untrusted provider' — a meaningful trust caveat. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The first sentence front-loads the core purpose, and the second gives conditional usage guidance. Every clause carries meaningful information, and no redundancy or filler is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given a fully described 15-parameter schema, an output schema, and safety annotations, the description supplies the necessary mental model: raw-first lookup, mapping via rawTransactionId, and details with untrusted-provider caveat. It does not discuss pagination or sorting, but those are fully documented in the schema. A slightly explicit note on when to prefer this over list_portfolio_transactions would push it to 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description earns a 4 by explaining how rawTransactionId and includeDetails work together: rawTransactionId maps to wallet movements/accounting transactions, and includeDetails adds provider-sourced event logs and contract calls. This goes beyond the schema's field-level descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair: 'Find compact source transactions... called Raw Transactions in Tokenbooks.' It clarifies scope ('including unprocessed or partially linked activity') and the concept is distinct from sibling list tools. An agent can immediately tell what this tool returns and how it differs from higher-level portfolio transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives practical usage cues: this is the 'first' source-level lookup, and it explains conditional flows ('Pass rawTransactionId to show how one maps...; add includeDetails for...'). It stops short of explicitly naming when not to use it or comparing it with sibling tools like list_portfolio_transactions, but the workflow guidance is clear enough to be useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_walletsList WalletsARead-onlyIdempotentInspect
List wallets in a portfolio with sync status and transaction counts. Pass chainId and walletAddress to check one wallet instead — safe codes/messages show whether to retry or reconnect credentials. EVM addresses are normalized; other networks may be case-sensitive.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, starting at 1 | |
| limit | No | Maximum items to return, maximum 100. Preferred MCP pagination field. | |
| chainId | No | Optional chain filter, or with walletAddress | |
| pageSize | No | Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls. | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| walletAddress | No | Look up one wallet; requires chainId |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | |
| name | No | |
| address | No | |
| chainId | No | |
| createdAt | No | |
| lastSyncAt | No | |
| pagination | No | |
| resultType | Yes | |
| syncStatus | No | |
| syncMessages | No | |
| transactionCount | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds valuable context beyond that: response codes/messages indicate whether to retry or reconnect credentials, and EVM address normalization vs. case-sensitivity on other networks. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences: main purpose, single-wallet mode, and an input edge-case caveat. Every sentence earns its place and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the rich schema and existing output schema, the description covers the main use case, the single-wallet alternative, response behavior (retry/reconnect codes), and an input normalization caveat. An agent has everything needed to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds a parameter-relevant caveat about EVM normalization and case sensitivity, and reinforces the chainId+walletAddress pairing, going beyond the schema's existing documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb and resource: 'List wallets in a portfolio', and adds the specific output fields 'sync status and transaction counts'. It also distinguishes a single-wallet mode, making it easy to tell apart from sibling list tools like list_portfolios or list_chains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a concrete usage condition: pass chainId and walletAddress to check one wallet instead of listing all. This implies the appropriate context for the tool, though it does not explicitly name alternative tools or state when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workspacesList WorkspacesARead-onlyIdempotentInspect
List workspaces available to the authenticated Tokenbooks user, or search by name or slug.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Optional workspace name or slug search query |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds meaningful behavioral context by specifying the authenticated-user scope and the search-by-name-or-slug capability, which goes beyond the structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no filler. It front-loads the verb and resource, then adds the optional search behavior. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one optional parameterSecret, the description covers purpose, scope, and search behavior. Annotations handle safety, and an output schema exists so return values do not need description. Nothing essential for invoking the tool correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the only parameter 'query' already has a description in the schema. The tool description reaffirms the parameter semantics by mentioning 'search by name or slug' but does not add material new meaning beyond the existing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('workspaces available to the authenticated Tokenbooks user'), clearly distinguishing this tool from sibling tools like list_wallets or list_portfolios. The optional search by name or slug is a concrete scope qualifier.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when listing or searching workspaces for the authenticated user. However, it does not explicitly mention alternatives or exclusions relative to other list_* tools, leaving usage guidance to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mark_token_spamMark Token as SpamAInspect
Mark or unmark a token as spam so unwanted dust or airdrops are excluded from accounting and existing records are updated; this queued action defaults to marking spam and returns a requestId.
| Name | Required | Description | Default |
|---|---|---|---|
| isSpam | No | Spam flag to set (default true; false unmarks) | |
| reason | No | Optional immutable root reason. Nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references. | |
| chainId | Yes | Chain ID of the token (from a walletOperation) | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| tokenAddress | Yes | Token contract address (from a walletOperation) | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | Yes | |
| success | No | |
| requestId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description discloses important behavior: the action is queued, defaults to marking spam, updates 'existing records,' and 'returns a requestId.' This gives the agent useful expectations about asynchronicity, side effects, and response shape that annotations alone do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence where every clause earns its place: the action, the accounting effect, the update to existing records, the queued nature, the default, and the requestId. There is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema and 100% parameter documentation, the description covers the remaining essentials: what the tool does, why it is used, how it behaves asynchronously, and what it returns. No critical behavioral or selection context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all six parameters, including the isSpam default and reason immutability. The description does not add parameter-level semantics beyond that, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Mark or unmark a token as spam.' It clarifies the purpose by saying unwanted dust or airdrops are 'excluded from accounting,' which distinguishes it from sibling tools that manage transactions, accounting rules, or sync operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: to handle 'unwanted dust or airdrops' by excluding them from accounting. It does not explicitly name alternatives or state when not to use it, but the use case is specific enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
merge_transactionsMerge Portfolio TransactionsADestructiveInspect
Destructively combine wallet movements from several accounting transactions into one target transaction and reclassify it; preview the grouping first, then track the queued requestId.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional immutable root reason. Nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references. | |
| subType | No | Optional operation sub-type | |
| operations | Yes | Operations to merge into the target | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| operationType | Yes | Accounting operation type for the merged transaction | |
| transactionId | Yes | Target transaction the operations are merged into |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | Yes | |
| success | No | |
| requestId | No | |
| transactionId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses destructive behavior ('Destructively combine') which aligns with the destructiveHint annotation. It also adds valuable context beyond annotations: the need to preview before the operation and the async nature via 'queued requestId'. This informs the agent about the non-idempotent, asynchronous behavior that annotations alone don't convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence that front-loads the core action, then adds essential usage notes (preview, requestId). There is no redundancy or filler; every phrase earns its place. It is perfectly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, asynchronous operation with an output schema, the description covers the key workflow: preview, execute, track. It mentions the requestId which links to sibling get_request_status. While it omits details like error handling or prerequisites, the presence of an output schema and annotations covers much of the remaining context. It is sufficiently complete for an agent to proceed correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are documented in the schema itself. The description does not add further meaning to parameters beyond what the schema provides; it only restates the overall purpose. Since the schema already covers parameter semantics, a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'combine' (merge) with a specific resource (portfolio transactions) and the effect (destructive reclassification). It also mentions the preview step and requestId tracking, which differentiates it from siblings like split_transactions and edit_transaction. The purpose is unambiguous and distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description instructs to 'preview the grouping first' and 'track the queued requestId', giving a clear workflow. However, it does not explicitly state when to use this tool vs alternatives (e.g., split_transactions or edit_transaction) or mention conditions where it should not be used. The guidance is implicit rather than explicit about alternative selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_transaction_classificationPreview Transaction ClassificationARead-onlyIdempotentInspect
Preview how selected wallet movements would be grouped and labeled as accounting transactions. Returns every proposal in order and saves nothing.
| Name | Required | Description | Default |
|---|---|---|---|
| operations | Yes | Exact transfer-operation handles returned by transaction reads, including the accounting transaction each operation currently belongs to | |
| portfolioRef | Yes | Portfolio name or slug inside that workspace. Call list_portfolios to resolve it. | |
| workspaceRef | Yes | Workspace name or slug. Call list_workspaces to resolve it. |
Output Schema
| Name | Required | Description |
|---|---|---|
| transactions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context beyond annotations: it promises ordered proposals and explicitly states that nothing is saved, reinforcing the non-destructive nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences carry complete intent with no filler. The action ('Preview') and key guarantee ('saves nothing') are front-loaded and every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a preview tool with full input-schema documentation, an output schema, and annotations covering safety and idempotency, the description is complete. An agent has enough to select and invoke it correctly without needing further context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each parameter already documented, including resolution hints for portfolioRef and workspaceRef. The description itself adds little parameter-level meaning, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Preview how selected wallet movements would be grouped and labeled as accounting transactions.' It clearly communicates a non-committal, preview-only operation and distinguishes it from mutation tools like confirm_transaction or edit_transaction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'saves nothing' strongly implies this tool is for inspection before a mutating counterpart such as confirm_transaction. It gives clear contextual guidance by emphasizing no persistence, though it does not explicitly name an alternative tool or exclusion condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reprocess_transactionReprocess Portfolio TransactionADestructiveInspect
Recalculate one accounting transaction after correcting its inputs; this destructive queued job may regroup only its assigned wallet movements, and waitForCompletion can return the final state.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional immutable root reason; nonempty bytes are preserved exactly | |
| timeoutMs | No | Maximum wait time in milliseconds | |
| portfolioRef | Yes | Portfolio name or slug | |
| workspaceRef | Yes | Workspace name or slug | |
| transactionId | Yes | Selected portfolio transaction ID to reprocess | |
| pollIntervalMs | No | Request-status polling interval in milliseconds | |
| waitForCompletion | No | Wait for the queued reprocess request to reach a terminal state before returning |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | Yes | |
| success | No | |
| requests | No | |
| statuses | No | |
| completed | No | |
| requestId | No | |
| finalState | No | |
| transactionId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds meaningful behavioral context beyond annotations: it is a 'destructive queued job,' may 'regroup only its assigned wallet movements,' and notes that 'waitForCompletion can return the final state.' This supplements the destructiveHint and gives the agent insight into side effects and execution model.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense sentence with no filler. It front-loads the core purpose, then provides essential behavioral caveats about destructiveness, queued execution, and wait behavior. Every clause adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of annotations and an output schema, the description covers the key nuances: queued execution, destructive nature, scope of side effects, and waitForCompletion behavior. It does not attempt to explain every parameter or return shape, which is appropriate because those are already specified structurally.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the input schema. The description does not need to elaborate on individual parameters, and it does not add significant parameter-specific meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with a specific verb and resource: 'Recalculate one accounting transaction after correcting its inputs.' This clearly distinguishes the operation from editing, merging, or splitting transactions, and the phrase 'one accounting transaction' narrows the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'after correcting its inputs' gives clear contextual guidance on when to invoke this tool. It does not explicitly name alternative tools or state when not to use it, but the purpose is specific enough that an agent can infer appropriate usage compared to generic editing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_report_exportRequest Report ExportAInspect
Queue generation of the requested spreadsheet, PDF, or JSON accounting report—such as profit and loss, trial balance, balance sheet, journal, or transaction export—for a reporting period; track the returned requestId with get_request_status.
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | Export format | |
| toDate | Yes | Report period end ISO timestamp | |
| fromDate | Yes | Report period start ISO timestamp | |
| reportType | Yes | Report type | |
| totalsOnly | No | Return summary only when true | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug |
Output Schema
| Name | Required | Description |
|---|---|---|
| requestId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=false and idempotentHint=false, so the write nature is known. The description adds valuable behavioral context by stating the operation is queued (asynchronous) and that a requestId is returned for polling via get_request_status, going beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence. It front-loads the core action ('Queue generation'), gives the resource and period, and ends by routing to get_request_status. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and thorough parameter schemas, the description covers what matters: the asynchronous nature, the return of requestId, and the tracking step. It does not explicitly mention that results are generated asynchronously and may take time, but that is reasonably implied by 'Queue generation'. Slightly more detail about what to do while waiting would make it a 5, but it is complete enough for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description need not repeat parameter definitions. It lightly reinforces the meanings of reportType and format by listing examples (profit and loss, trial balance, etc.) and mentioning 'reporting period' for dates, which maps to fromDate/toDate. This adds marginal value over the schema, warranting a baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Queue generation' with a clear resource ('accounting report') and enumerates formats (spreadsheet, PDF, JSON) and report types. It also names the sibling get_request_status as the follow-up, which distinguishes this async export tool from direct data-retrieval siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly indicates when to use this tool: to export a report in spreadsheet/PDF/JSON for a reporting period. It provides a next-step pointer to get_request_status, but does not explicitly exclude alternatives or name when not to use it, falling just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
simulate_fiat_quoteSimulate Fiat Payout QuoteARead-onlyIdempotentInspect
Estimate exchange rates, processing fees, amount received, and corridor limits for a bank payout before sending money; use it to compare supported rails such as ACH, SEPA, EFT, FPS, IMPS, or SWIFT.
| Name | Required | Description | Default |
|---|---|---|---|
| network | Yes | Fiat payout rail / bank method | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| senderCurrency | No | Stablecoin funding the payout (default USDC) | |
| receivingAmount | Yes | Amount the recipient should receive, as a decimal string in the receiving currency (e.g. "500000") | |
| purposeOfPayment | No | Purpose-of-payment classification | |
| receivingCurrency | No | ISO 4217 receiving currency; defaults to the network default | |
| recipientBankCountry | No | ISO 3166-1 alpha-2 recipient bank country; defaults to the network default |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| quote | No | |
| status | Yes | |
| corridor | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context: the tool produces estimates, does not send money, and supports comparing multiple rails. This is consistent with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that front-loads what the tool does, lists concrete outputs, and gives rail examples. No wasted words and no repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description, combined with full parameter docs, rich enums, an output schema, and safety annotations, gives an agent everything needed to select and invoke the tool correctly. It clearly states the tool is for simulation/estimation before sending money, which is the core contextual requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and every parameter already has a meaningful description and enum where applicable. The tool description adds context about the outputs produced rather than new parameter-level meaning, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Estimate') and names the resource and outputs: exchange rates, processing fees, amount received, and corridor limits. It also distinguishes the tool from execution-oriented siblings by emphasizing 'before sending money' and by listing supported rails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly frames the tool as a pre-send estimation/compare utility across rails such as ACH, SEPA, EFT, FPS, IMPS, or SWIFT. It does not explicitly name excluded alternatives or say 'use confirm_transaction to actually send,' but the use case is clear enough for an agent to route correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
split_transactionsSplit Portfolio TransactionADestructiveInspect
Destructively move selected whole existing operation handles unchanged out of one accounting transaction into a new classified transaction; use this only when the needed economic legs already exist as operation handles. It cannot divide one transfer amount into new economic legs: repair sync normalization or use a supported persisted replacement lifecycle for a missing leg. Preview the grouping first, then track the queued requestId.
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional immutable root reason. Nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references. | |
| subType | No | Optional operation sub-type | |
| operations | Yes | Whole existing operation handles to move unchanged into a new transaction; do not use this to divide one normalized transfer amount into new economic legs | |
| portfolioRef | Yes | Portfolio exact name or slug | |
| workspaceRef | Yes | Workspace exact name or slug | |
| operationType | Yes | Accounting operation type for the new transaction | |
| transactionId | Yes | Source transaction to split operations out of |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | |
| status | Yes | |
| success | No | |
| requestId | No | |
| transactionId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and readOnlyHint=false. The description reinforces and expands: 'Destructively move' aligns with destructiveHint, and it discloses that the operation is asynchronous by instructing to 'track the queued requestId.' It also adds the constraint that it cannot divide amounts, which is a behavioral limitation. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core action and constraint. It avoids redundancy with the schema but uses domain jargon (e.g., 'operation handles', 'economic legs') that may require prior knowledge. It is concise enough and logically structured: what, when, how.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, output schema present, destructive action), the description covers the critical behavioral aspects: destructive nature, limitation, preview step, and async tracking. The output schema presumably explains return values. It does not mention required permissions or error handling, but these are not commonly required. The description is complete for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents each parameter. The description adds context about the tool's purpose but does not add new parameter-level semantics beyond what the schema provides. For example, the operations parameter schema already says 'Whole existing operation handles to move unchanged into a new transaction; do not use this to divide one normalized transfer amount into new economic legs,' which mirrors the description. Thus, the description provides no additional value for parameter interpretation beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Destructively move selected whole existing operation handles unchanged out of one accounting transaction into a new classified transaction.' It clearly identifies the resource (operation handles) and the outcome (new classified transaction). It also distinguishes itself from siblings by specifying when it applies and its limitation on dividing amounts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: 'use this only when the needed economic legs already exist as operation handles.' It also states when not to use: 'It cannot divide one transfer amount into new economic legs' and suggests alternatives ('repair sync normalization or use a supported persisted replacement lifecycle'). It also instructs to 'Preview the grouping first, then track the queued requestId,' providing a clear usage sequence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- Changed
create_portfolio2 fields changed- added
Output schema / properties / hasPostedActivityAdded value: +{ + "type": "boolean" +} - changed
Output schema / requiredPrevious value: -[ - "slug", - "name", - "createdAt", - "updatedAt", - "currency", - "accountingConfiguration", - "reportingTimezone" -]New value: +[ + "slug", + "name", + "createdAt", + "updatedAt", + "currency", + "accountingConfiguration", + "reportingTimezone", + "hasPostedActivity" +]
- Changed
get_filter_options7 fields changed- changed
Input schema / properties / filterName / enumPrevious value: -[ - "portfolio-transaction-addresses", - "portfolio-transaction-account-name", - "portfolio-transaction-assets", - "portfolio-transaction-counterparties", - "portfolio-transaction-wallets", - "portfolio-transaction-responsibility-centers", - "portfolio-transaction-lot-presence", - "portfolio-transaction-journal-entry-presence", - "portfolio-transaction-status-counts", - "portfolio-transaction-warnings", - "accounts" -]New value: +[ + "portfolio-transaction-addresses", + "portfolio-transaction-account-name", + "portfolio-transaction-assets", + "portfolio-transaction-counterparties", + "portfolio-transaction-wallets", + "portfolio-transaction-responsibility-centers", + "portfolio-transaction-lot-presence", + "portfolio-transaction-journal-entry-presence", + "portfolio-transaction-status-counts", + "portfolio-transaction-warnings", + "accounts", + "portfolio-transaction-period" +] - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Requested number of resources to return. Oversized values are clamped to the route limit. Not for filterName accounts."New value: +"Requested number of resources to return. Oversized values are clamped to the route limit. Not for filterName accounts, portfolio-transaction-period." - changed
Input schema / properties / pageToken / descriptionPrevious value: -"Opaque token returned by the previous list response. Not for filterName accounts."New value: +"Opaque token returned by the previous list response. Not for filterName accounts, portfolio-transaction-period." - changed
Input schema / properties / search / descriptionPrevious value: -"Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields. Not for filterName accounts."New value: +"Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields. Not for filterName accounts, portfolio-transaction-period." - changed
Input schema / properties / selected / descriptionPrevious value: -"Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array. Not for filterName accounts."New value: +"Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array. Not for filterName accounts, portfolio-transaction-period." - changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "data": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "identity": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "counterparty", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "addressBookItemType": { - "enum": [ - "CUSTOMER", - "VENDOR", - "EMPLOYEE", - "OTHER" - ], - "type": "string" - }, - "category": { - "const": "addressBook", - "type": "string" - } - }, - "required": [ - "category", - "address", - "addressBookItemType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "wallet", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "childAddresses": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "address", - "chainId" - ], - "type": "object" - }, - "type": "array" - }, - "walletName": { - "type": "string" - }, - "walletOwnerPortfolio": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "slug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - } - }, - "required": [ - "slug", - "name" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "category", - "address", - "walletName", - "walletType", - "childAddresses" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "raw", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - } - ] - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionAddress", - "type": "string" - }, - "transfersCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transfersCount", - "identity" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "accountType": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "assetId": { - "minLength": 1, - "type": "string" - }, - "currency": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAccountName", - "type": "string" - }, - "subType": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "accountNumber", - "name", - "accountType", - "subType", - "currency", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAsset", - "type": "string" - }, - "quoteCurrency": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "totalValue": { - "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "assetId", - "symbol", - "name", - "totalValue", - "quoteCurrency", - "isSpam", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "counterpartyId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "lineCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionCounterparty", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "name", - "counterpartyId", - "lineCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "displayName": { - "minLength": 1, - "type": "string" - }, - "isBalanceMatch": { - "type": "boolean" - }, - "lastTransactionTimestamp": { - "format": "date-time", - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "operationsCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "optionKind": { - "const": "portfolioTransactionWallet", - "type": "string" - }, - "tokenCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - }, - "valueQuote": { - "minLength": 1, - "type": "string" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "chainId", - "address", - "displayName", - "chainName", - "walletType", - "operationsCount", - "tokenCount", - "isBalanceMatch" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionResponsibilityCenter", - "type": "string" - }, - "responsibilityCenterCode": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterKind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "responsibilityCenterTypeName": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "responsibilityCenterName", - "responsibilityCenterTypeKey", - "responsibilityCenterTypeName", - "responsibilityCenterKind", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionLotPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withLots", - "withoutLots" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionJournalEntryPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withJournalEntries", - "withoutJournalEntries" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionStatusCount", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionWarning", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "nextPageToken": { - "minLength": 1, - "type": "string" - }, - "pageSize": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumbers": { - "items": { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "accountNumber", - "name" - ], - "type": "object" - }, - "type": "array" - }, - "accountTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "assets": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "currencies": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "hierarchy": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "parent", - "leaf" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "includeNoWallet": { - "additionalProperties": false, - "properties": { - "label": { - "const": "No wallet", - "type": "string" - }, - "value": { - "const": "noWallet", - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "normalBalanceTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "origins": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "SYSTEM_MANAGED", - "SYSTEM_DEFAULT", - "USER_MANAGED" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "paymentLabelStates": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "withLabel", - "withoutLabel" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "revisionHash": { - "type": "string" - }, - "statuses": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "active", - "archived" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "subTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "wallets": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "chainId", - "address", - "name" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "accountNumbers", - "accountTypes", - "subTypes", - "normalBalanceTypes", - "wallets", - "includeNoWallet", - "assets", - "currencies", - "statuses", - "paymentLabelStates", - "hierarchy", - "origins", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "const": "hit", - "type": "string" - }, - "data": { - "items": {}, - "maxItems": 0, - "minItems": 0, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "pageSize": { - "type": "number" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "data": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "identity": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "counterparty", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "addressBookItemType": { + "enum": [ + "CUSTOMER", + "VENDOR", + "EMPLOYEE", + "OTHER" + ], + "type": "string" + }, + "category": { + "const": "addressBook", + "type": "string" + } + }, + "required": [ + "category", + "address", + "addressBookItemType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "wallet", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "childAddresses": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "address", + "chainId" + ], + "type": "object" + }, + "type": "array" + }, + "walletName": { + "type": "string" + }, + "walletOwnerPortfolio": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "slug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + } + }, + "required": [ + "slug", + "name" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "category", + "address", + "walletName", + "walletType", + "childAddresses" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "raw", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + } + ] + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionAddress", + "type": "string" + }, + "transfersCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transfersCount", + "identity" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "accountType": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "assetId": { + "minLength": 1, + "type": "string" + }, + "currency": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAccountName", + "type": "string" + }, + "subType": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "accountNumber", + "name", + "accountType", + "subType", + "currency", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAsset", + "type": "string" + }, + "quoteCurrency": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "totalValue": { + "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "assetId", + "symbol", + "name", + "totalValue", + "quoteCurrency", + "isSpam", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "counterpartyId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "lineCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionCounterparty", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "name", + "counterpartyId", + "lineCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "displayName": { + "minLength": 1, + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "operationsCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "optionKind": { + "const": "portfolioTransactionWallet", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + }, + "valueQuote": { + "minLength": 1, + "type": "string" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "chainId", + "address", + "displayName", + "chainName", + "walletType", + "operationsCount", + "tokenCount", + "isBalanceMatch" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionResponsibilityCenter", + "type": "string" + }, + "responsibilityCenterCode": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterKind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "responsibilityCenterTypeName": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "responsibilityCenterName", + "responsibilityCenterTypeKey", + "responsibilityCenterTypeName", + "responsibilityCenterKind", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionLotPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withLots", + "withoutLots" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionJournalEntryPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withJournalEntries", + "withoutJournalEntries" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionStatusCount", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionWarning", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "const": "hit", + "type": "string" + }, + "data": { + "items": {}, + "maxItems": 0, + "minItems": 0, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumbers": { + "items": { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "accountNumber", + "name" + ], + "type": "object" + }, + "type": "array" + }, + "accountTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "assets": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "currencies": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "hierarchy": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "parent", + "leaf" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "includeNoWallet": { + "additionalProperties": false, + "properties": { + "label": { + "const": "No wallet", + "type": "string" + }, + "value": { + "const": "noWallet", + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "normalBalanceTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "origins": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "SYSTEM_MANAGED", + "SYSTEM_DEFAULT", + "USER_MANAGED" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "paymentLabelStates": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "withLabel", + "withoutLabel" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "revisionHash": { + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "active", + "archived" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "subTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "wallets": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "chainId", + "address", + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "accountNumbers", + "accountTypes", + "subTypes", + "normalBalanceTypes", + "wallets", + "includeNoWallet", + "assets", + "currencies", + "statuses", + "paymentLabelStates", + "hierarchy", + "origins", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "period": { + "additionalProperties": false, + "properties": { + "maxTimestamp": { + "format": "date-time", + "type": "string" + }, + "minTimestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "minTimestamp", + "maxTimestamp" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "cacheStatus", + "revisionHash" + ], + "type": "object" + } +] - added
Output schema / properties / periodAdded value: +{ + "additionalProperties": false, + "properties": { + "maxTimestamp": { + "format": "date-time", + "type": "string" + }, + "minTimestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "minTimestamp", + "maxTimestamp" + ], + "type": "object" +}
- Changed
get_portfolio2 fields changed- added
Output schema / properties / hasPostedActivityAdded value: +{ + "type": "boolean" +} - changed
Output schema / requiredPrevious value: -[ - "slug", - "name", - "createdAt", - "updatedAt", - "currency", - "accountingConfiguration", - "reportingTimezone" -]New value: +[ + "slug", + "name", + "createdAt", + "updatedAt", + "currency", + "accountingConfiguration", + "reportingTimezone", + "hasPostedActivity" +]
1 tool update
- Changed
edit_accounting_rules5 fields changed- changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "jobId": { - "type": "string" - }, - "mode": { - "enum": [ - "sync", - "async" - ], - "type": "string" - }, - "result": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "data": {}, - "success": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "success" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "body": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "currentUsage": { - "type": "number" - }, - "limit": { - "type": "number" - }, - "usageType": { - "type": "string" - } - }, - "required": [ - "usageType", - "currentUsage", - "limit" - ], - "type": "object" - }, - {} - ] - }, - "message": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "name", - "message", - "body" - ], - "type": "object" - }, - "success": { - "const": false, - "type": "boolean" - } - }, - "required": [ - "success", - "error" - ], - "type": "object" - } - ] - }, - "status": { - "const": "queued", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "affectedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "candidateCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "changes": { - "items": { - "additionalProperties": false, - "properties": { - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "account": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "maxLength": 8, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "from", - "to" - ], - "type": "object" - }, - "counterparty": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "matchedButLost": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "responsibilityCenters": { - "items": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "to": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - } - }, - "required": [ - "responsibilityCenterTypeKey" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "lineNumber", - "responsibilityCenters", - "matchedButLost" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "portfolioTransactionId": { - "minLength": 1, - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "portfolioTransactionId", - "timestamp", - "lines" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "detail": { - "const": "compact", - "type": "string" - }, - "firstAffectedAt": { - "format": "date-time", - "type": "string" - }, - "lastAffectedAt": { - "format": "date-time", - "type": "string" - }, - "scannedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "truncatedBy": { - "enum": [ - "affected", - "budget", - "details", - "scanned" - ], - "type": "string" - } - }, - "required": [ - "detail", - "scannedCount", - "candidateCount", - "affectedCount", - "changes" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "jobId": { + "$ref": "#/properties/jobId" + }, + "mode": { + "$ref": "#/properties/mode" + }, + "result": { + "$ref": "#/properties/result" + }, + "status": { + "$ref": "#/properties/status" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "affectedCount": { + "$ref": "#/properties/affectedCount" + }, + "candidateCount": { + "$ref": "#/properties/candidateCount" + }, + "changes": { + "$ref": "#/properties/changes" + }, + "detail": { + "const": "compact", + "type": "string" + }, + "firstAffectedAt": { + "$ref": "#/properties/firstAffectedAt" + }, + "lastAffectedAt": { + "$ref": "#/properties/lastAffectedAt" + }, + "scannedCount": { + "$ref": "#/properties/scannedCount" + }, + "skippedRuleEvidence": { + "$ref": "#/properties/skippedRuleEvidence" + }, + "truncatedBy": { + "$ref": "#/properties/truncatedBy" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes" + ], + "type": "object" + } +] - changed
Output schema / properties / affectedCount / maximumPrevious value: -9007199254740991New value: +100 - added
Output schema / properties / changes / items / properties / lines / items / properties / assignmentChangedAdded value: +{ + "type": "boolean" +} - added
Output schema / properties / changes / items / properties / ruleEvaluationFailuresAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "rejection": { + "additionalProperties": false, + "properties": { + "code": { + "enum": [ + "ACCOUNT_FACTS_INCOMPLETE", + "ASSET_EVIDENCE_INCOMPLETE", + "CURRENCY_MISMATCH", + "WALLET_SCOPE_CONFLICT", + "WALLET_PROVENANCE_AMBIGUOUS", + "ASSET_EVIDENCE_CONFLICT", + "ASSET_EVIDENCE_MISSING", + "LOT_EVIDENCE_INCONSISTENT", + "INVALID_REPORT_CLASSIFICATION", + "CAPITAL_GAINS_LOT_EVIDENCE_REQUIRED", + "CAPITAL_LOSS_DISPOSAL_LOT_EVIDENCE_REQUIRED", + "COUNTERPARTY_NOT_SUPPORTED" + ], + "type": "string" + }, + "message": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "code", + "message" + ], + "type": "object" + }, + "rule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + } + }, + "required": [ + "rule" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / skippedRuleEvidenceAdded value: +{ + "items": { + "$ref": "#/properties/changes/items" + }, + "maxItems": 2000, + "type": "array" +}
1 tool update
- Changed
get_asset_position5 fields changed- added
Input schema / properties / includeSpamAdded value: +{ + "description": "Also match assets marked as spam", + "type": "boolean" +} - added
Output schema / properties / pricedAtAdded value: +{ + "type": "string" +} - added
Output schema / properties / unitPriceAdded value: +{ + "type": "string" +} - added
Output schema / properties / valuationAdded value: +{ + "additionalProperties": false, + "properties": { + "reason": { + "type": "string" + }, + "source": { + "enum": [ + "PORTFOLIO_CURRENCY", + "STABLECOIN_PEG", + "LIVE", + "LAST_CLOSE", + "HISTORICAL_CLOSE" + ], + "type": "string" + }, + "status": { + "enum": [ + "PRICED", + "UNAVAILABLE" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" +} - changed
Output schema / requiredPrevious value: -[ - "asset", - "currency", - "perWallet", - "totals" -]New value: +[ + "asset", + "currency", + "valuation", + "perWallet", + "totals" +]
1 tool update
- Changed
get_filter_options2 fields changed- changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "data": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "identity": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "counterparty", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "addressBookItemType": { - "enum": [ - "CUSTOMER", - "VENDOR", - "EMPLOYEE", - "OTHER" - ], - "type": "string" - }, - "category": { - "const": "addressBook", - "type": "string" - } - }, - "required": [ - "category", - "address", - "addressBookItemType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "wallet", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "childAddresses": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "address", - "chainId" - ], - "type": "object" - }, - "type": "array" - }, - "walletName": { - "type": "string" - }, - "walletOwnerPortfolio": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "slug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - } - }, - "required": [ - "slug", - "name" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "category", - "address", - "walletName", - "walletType", - "childAddresses" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "raw", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - } - ] - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionAddress", - "type": "string" - }, - "transfersCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transfersCount", - "identity" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "accountType": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "assetId": { - "minLength": 1, - "type": "string" - }, - "currency": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAccountName", - "type": "string" - }, - "subType": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "accountNumber", - "name", - "accountType", - "subType", - "currency", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAsset", - "type": "string" - }, - "quoteCurrency": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "totalValue": { - "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "assetId", - "symbol", - "name", - "totalValue", - "quoteCurrency", - "isSpam", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "counterpartyId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "lineCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionCounterparty", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "name", - "counterpartyId", - "lineCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "displayName": { - "minLength": 1, - "type": "string" - }, - "isBalanceMatch": { - "type": "boolean" - }, - "lastTransactionTimestamp": { - "format": "date-time", - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "operationsCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "optionKind": { - "const": "portfolioTransactionWallet", - "type": "string" - }, - "tokenCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - }, - "valueQuote": { - "minLength": 1, - "type": "string" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "chainId", - "address", - "displayName", - "chainName", - "walletType", - "operationsCount", - "tokenCount", - "isBalanceMatch" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionResponsibilityCenter", - "type": "string" - }, - "responsibilityCenterCode": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterKind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "responsibilityCenterTypeName": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "responsibilityCenterName", - "responsibilityCenterTypeKey", - "responsibilityCenterTypeName", - "responsibilityCenterKind", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionLotPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withLots", - "withoutLots" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionJournalEntryPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withJournalEntries", - "withoutJournalEntries" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionStatusCount", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionWarning", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "nextPageToken": { - "minLength": 1, - "type": "string" - }, - "pageSize": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumbers": { - "items": { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "accountNumber", - "name" - ], - "type": "object" - }, - "type": "array" - }, - "accountTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "assets": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "currencies": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "hierarchy": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "parent", - "leaf" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "includeNoWallet": { - "additionalProperties": false, - "properties": { - "label": { - "const": "No wallet", - "type": "string" - }, - "value": { - "const": "noWallet", - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "normalBalanceTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "paymentLabelStates": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "withLabel", - "withoutLabel" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "revisionHash": { - "type": "string" - }, - "statuses": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "active", - "archived" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "subTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "wallets": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "chainId", - "address", - "name" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "accountNumbers", - "accountTypes", - "subTypes", - "normalBalanceTypes", - "wallets", - "includeNoWallet", - "assets", - "currencies", - "statuses", - "paymentLabelStates", - "hierarchy", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "const": "hit", - "type": "string" - }, - "data": { - "items": {}, - "maxItems": 0, - "minItems": 0, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "pageSize": { - "type": "number" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "data": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "identity": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "counterparty", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "addressBookItemType": { + "enum": [ + "CUSTOMER", + "VENDOR", + "EMPLOYEE", + "OTHER" + ], + "type": "string" + }, + "category": { + "const": "addressBook", + "type": "string" + } + }, + "required": [ + "category", + "address", + "addressBookItemType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "wallet", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "childAddresses": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "address", + "chainId" + ], + "type": "object" + }, + "type": "array" + }, + "walletName": { + "type": "string" + }, + "walletOwnerPortfolio": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "slug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + } + }, + "required": [ + "slug", + "name" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "category", + "address", + "walletName", + "walletType", + "childAddresses" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "raw", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + } + ] + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionAddress", + "type": "string" + }, + "transfersCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transfersCount", + "identity" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "accountType": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "assetId": { + "minLength": 1, + "type": "string" + }, + "currency": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAccountName", + "type": "string" + }, + "subType": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "accountNumber", + "name", + "accountType", + "subType", + "currency", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAsset", + "type": "string" + }, + "quoteCurrency": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "totalValue": { + "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "assetId", + "symbol", + "name", + "totalValue", + "quoteCurrency", + "isSpam", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "counterpartyId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "lineCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionCounterparty", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "name", + "counterpartyId", + "lineCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "displayName": { + "minLength": 1, + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "operationsCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "optionKind": { + "const": "portfolioTransactionWallet", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + }, + "valueQuote": { + "minLength": 1, + "type": "string" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "chainId", + "address", + "displayName", + "chainName", + "walletType", + "operationsCount", + "tokenCount", + "isBalanceMatch" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionResponsibilityCenter", + "type": "string" + }, + "responsibilityCenterCode": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterKind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "responsibilityCenterTypeName": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "responsibilityCenterName", + "responsibilityCenterTypeKey", + "responsibilityCenterTypeName", + "responsibilityCenterKind", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionLotPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withLots", + "withoutLots" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionJournalEntryPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withJournalEntries", + "withoutJournalEntries" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionStatusCount", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionWarning", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumbers": { + "items": { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "accountNumber", + "name" + ], + "type": "object" + }, + "type": "array" + }, + "accountTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "assets": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "currencies": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "hierarchy": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "parent", + "leaf" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "includeNoWallet": { + "additionalProperties": false, + "properties": { + "label": { + "const": "No wallet", + "type": "string" + }, + "value": { + "const": "noWallet", + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "normalBalanceTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "origins": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "SYSTEM_MANAGED", + "SYSTEM_DEFAULT", + "USER_MANAGED" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "paymentLabelStates": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "withLabel", + "withoutLabel" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "revisionHash": { + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "active", + "archived" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "subTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "wallets": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "chainId", + "address", + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "accountNumbers", + "accountTypes", + "subTypes", + "normalBalanceTypes", + "wallets", + "includeNoWallet", + "assets", + "currencies", + "statuses", + "paymentLabelStates", + "hierarchy", + "origins", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "const": "hit", + "type": "string" + }, + "data": { + "items": {}, + "maxItems": 0, + "minItems": 0, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + } +] - added
Output schema / properties / originsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "SYSTEM_MANAGED", + "SYSTEM_DEFAULT", + "USER_MANAGED" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" +}
1 tool update
- Changed
get_request_status2 fields changed- changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "appProgress": { - "additionalProperties": false, - "properties": { - "completed": { - "type": "number" - }, - "total": { - "type": "number" - }, - "transactionsSynced": { - "type": "number" - } - }, - "required": [ - "completed", - "total", - "transactionsSynced" - ], - "type": "object" - }, - "completedAt": { - "format": "date-time", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "error": { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "code": { - "type": "string" - }, - "details": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "message": { - "type": "string" - }, - "requestId": { - "type": "string" - } - }, - "required": [ - "code", - "message", - "requestId" - ], - "type": "object" - } - }, - "required": [ - "error" - ], - "type": "object" - }, - "finishedOn": { - "type": "number" - }, - "kind": { - "const": "job", - "type": "string" - }, - "outcome": { - "additionalProperties": false, - "properties": { - "classificationState": { - "type": "string" - }, - "errorTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "hasError": { - "type": "boolean" - }, - "operationType": { - "type": "string" - }, - "suggestedAction": {}, - "transactionId": { - "type": "string" - }, - "type": { - "const": "portfolio_transaction", - "type": "string" - } - }, - "required": [ - "type", - "transactionId", - "hasError", - "errorTypes", - "suggestedAction" - ], - "type": "object" - }, - "progress": { - "type": "number" - }, - "requestId": { - "type": "string" - }, - "result": { - "additionalProperties": false, - "properties": { - "downloadUrl": { - "type": "string" - }, - "fileSize": { - "type": "number" - }, - "format": { - "enum": [ - "xlsx", - "pdf", - "json" - ], - "type": "string" - } - }, - "required": [ - "downloadUrl", - "fileSize", - "format" - ], - "type": "object" - }, - "returnValue": {}, - "status": { - "enum": [ - "pending", - "active", - "delayed", - "completed", - "failed" - ], - "type": "string" - }, - "subject": { - "additionalProperties": false, - "properties": { - "commandType": { - "type": "string" - }, - "kind": { - "const": "portfolio_transaction", - "type": "string" - }, - "transactionId": { - "type": "string" - } - }, - "required": [ - "kind", - "transactionId" - ], - "type": "object" - }, - "type": { - "enum": [ - "sync", - "export", - "recompute", - "reclassify" - ], - "type": "string" - }, - "updatedAt": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "requestId", - "type", - "status", - "progress", - "createdAt", - "updatedAt", - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "completedAt": { - "format": "date-time", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "error": { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "code": { - "type": "string" - }, - "details": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "message": { - "type": "string" - }, - "requestId": { - "type": "string" - } - }, - "required": [ - "code", - "message", - "requestId" - ], - "type": "object" - } - }, - "required": [ - "error" - ], - "type": "object" - }, - "kind": { - "const": "report", - "type": "string" - }, - "progressPercent": { - "maximum": 100, - "minimum": 0, - "type": "number" - }, - "requestId": { - "type": "string" - }, - "result": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "totals": {}, - "type": { - "const": "totals", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "totals": {}, - "type": { - "const": "full", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "rows": {}, - "totals": {}, - "totalsOnly": { - "type": "boolean" - }, - "type": { - "const": "json", - "type": "string" - } - }, - "required": [ - "type", - "rows", - "totals" - ], - "type": "object" - } - ] - }, - "status": { - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "type": "string" - } - }, - "required": [ - "status", - "progressPercent", - "createdAt", - "kind", - "requestId" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "kind": { + "const": "job", + "type": "string" + }, + "outcome": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {}, + "transactionId": { + "type": "string" + }, + "type": { + "const": "portfolio_transaction", + "type": "string" + } + }, + "required": [ + "type", + "transactionId", + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "subject": { + "additionalProperties": false, + "properties": { + "commandType": { + "type": "string" + }, + "kind": { + "const": "portfolio_transaction", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "kind", + "transactionId" + ], + "type": "object" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt", + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "kind": { + "const": "report", + "type": "string" + }, + "progressPercent": { + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "totals": {}, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": {}, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + }, + "status": { + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "type": "string" + } + }, + "required": [ + "status", + "progressPercent", + "createdAt", + "kind", + "requestId" + ], + "type": "object" + } +] - changed
Output schema / properties / result / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "downloadUrl": { - "type": "string" - }, - "fileSize": { - "type": "number" - }, - "format": { - "enum": [ - "xlsx", - "pdf", - "json" - ], - "type": "string" - } - }, - "required": [ - "downloadUrl", - "fileSize", - "format" - ], - "type": "object" - }, - { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "totals": {}, - "type": { - "const": "totals", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "totals": {}, - "type": { - "const": "full", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "rows": {}, - "totals": {}, - "totalsOnly": { - "type": "boolean" - }, - "type": { - "const": "json", - "type": "string" - } - }, - "required": [ - "type", - "rows", - "totals" - ], - "type": "object" - } - ] - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "totals": {}, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": {}, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + } +]
5 tool updates
- Changed
edit_accounting_rules9 fields changed- removed
Input schema / oneOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "enabled": { - "$ref": "#/properties/enabled" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "description": "Create a new rule, or preview creating one (preview: true).", - "enum": [ - "create" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "preview": { - "$ref": "#/properties/preview" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "name", - "conditions", - "action" - ], - "type": "object" - }, - { - "additionalProperties": false, - "anyOf": [ - { - "properties": { - "name": { - "$ref": "#/properties/name" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - { - "properties": { - "conditions": { - "$ref": "#/properties/conditions" - } - }, - "required": [ - "conditions" - ], - "type": "object" - }, - { - "properties": { - "action": { - "$ref": "#/properties/action" - } - }, - "required": [ - "action" - ], - "type": "object" - } - ], - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "description": "Change the name, conditions, or actions of an existing rule, or preview the change (preview: true).", - "enum": [ - "update" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "preview": { - "$ref": "#/properties/preview" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "enabled": { - "$ref": "#/properties/enabled" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "description": "Turn an existing rule on or off without changing it, or preview the change (preview: true).", - "enum": [ - "set_enabled" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "preview": { - "$ref": "#/properties/preview" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef", - "enabled" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "description": "Set the evaluation order of every rule in the portfolio, or preview it (preview: true).", - "enum": [ - "reorder" - ], - "type": "string" - }, - "orderedRuleRefs": { - "$ref": "#/properties/orderedRuleRefs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "preview": { - "$ref": "#/properties/preview" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "orderedRuleRefs" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "description": "Remove one saved rule from active use, or preview removing it (preview: true).", - "enum": [ - "delete" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "preview": { - "$ref": "#/properties/preview" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "description": "Preview the saved rules as they stand, changing nothing.", - "enum": [ - "current" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation" - ], - "type": "object" - } -] - added
Input schema / properties / action / descriptionAdded value: +"Only for operation create, update; required for operation create." - added
Input schema / properties / conditions / descriptionAdded value: +"Only for operation create, update; required for operation create." - changed
Input schema / properties / enabled / descriptionPrevious value: -"Whether the rule evaluates. A disabled rule is kept but never fires."New value: +"Whether the rule evaluates. A disabled rule is kept but never fires. Only for operation create, set_enabled; required for operation set_enabled." - changed
Input schema / properties / name / descriptionPrevious value: -"Human-readable rule name, shown in the rules list."New value: +"Human-readable rule name, shown in the rules list. Only for operation create, update; required for operation create." - changed
Input schema / properties / operation / descriptionPrevious value: -"Create a new rule, or preview creating one (preview: true)."New value: +"create: Create a new rule, or preview creating one (preview: true). update: Change the name, conditions, or actions of an existing rule, or preview the change (preview: true). Provide at least one of name, conditions, action. set_enabled: Turn an existing rule on or off without changing it, or preview the change (preview: true). reorder: Set the evaluation order of every rule in the portfolio, or preview it (preview: true). delete: Remove one saved rule from active use, or preview removing it (preview: true). current: Preview the saved rules as they stand, changing nothing." - changed
Input schema / properties / orderedRuleRefs / descriptionPrevious value: -"Every rule handle in the portfolio, in the order they should evaluate. Rules apply in order, so earlier rules win."New value: +"Every rule handle in the portfolio, in the order they should evaluate. Rules apply in order, so earlier rules win. Only for operation reorder; required for each." - changed
Input schema / properties / preview / descriptionPrevious value: -"When true, evaluate the change and return its impact without saving it."New value: +"When true, evaluate the change and return its impact without saving it. Not for operation current." - changed
Input schema / properties / ruleRef / descriptionPrevious value: -"Saved rule handle, from list_accounting_rules."New value: +"Saved rule handle, from list_accounting_rules. Only for operation update, set_enabled, delete; required for each."
- Changed
edit_transaction18 fields changed- removed
Input schema / oneOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "memo": { - "$ref": "#/properties/memo" - }, - "operation": { - "description": "Change memo, the full tag set, or the accounting operation type.", - "enum": [ - "update_fields" - ], - "type": "string" - }, - "operationType": { - "$ref": "#/properties/operationType" - }, - "pollIntervalMs": { - "$ref": "#/properties/pollIntervalMs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "subType": { - "$ref": "#/properties/subType" - }, - "tags": { - "$ref": "#/properties/tags" - }, - "timeoutMs": { - "$ref": "#/properties/timeoutMs" - }, - "transactionId": { - "$ref": "#/properties/transactionId" - }, - "waitForCompletion": { - "$ref": "#/properties/waitForCompletion" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "transactionId" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "$ref": "#/properties/accountNumber" - }, - "counterpartyName": { - "$ref": "#/properties/counterpartyName" - }, - "lineNumber": { - "$ref": "#/properties/lineNumber" - }, - "operation": { - "description": "Change the ledger account, counterparty, or reporting-group assignments on one transaction's debit or credit line.", - "enum": [ - "update_journal_line" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "responsibilityCenterAssignments": { - "$ref": "#/properties/responsibilityCenterAssignments" - }, - "transactionId": { - "$ref": "#/properties/transactionId" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "transactionId", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "assetId": { - "$ref": "#/properties/assetId" - }, - "newValueQuote": { - "$ref": "#/properties/newValueQuote" - }, - "operation": { - "description": "Set a corrected fair market value per unit for one asset on the transaction and recompute dependent cost-basis records.", - "enum": [ - "set_fmv_override" - ], - "type": "string" - }, - "pollIntervalMs": { - "$ref": "#/properties/pollIntervalMs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "quoteCurrency": { - "$ref": "#/properties/quoteCurrency" - }, - "quoteSource": { - "$ref": "#/properties/quoteSource" - }, - "reason": { - "$ref": "#/properties/reason" - }, - "timeoutMs": { - "$ref": "#/properties/timeoutMs" - }, - "transactionId": { - "$ref": "#/properties/transactionId" - }, - "waitForCompletion": { - "$ref": "#/properties/waitForCompletion" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "transactionId", - "assetId", - "newValueQuote" - ], - "type": "object" - } -] - changed
Input schema / properties / accountNumber / descriptionPrevious value: -"Chart-of-accounts number to assign (from list_journal_line_assignment_options, type: ledger_account)"New value: +"Chart-of-accounts number to assign (from list_journal_line_assignment_options, type: ledger_account) Only for operation update_journal_line." - changed
Input schema / properties / assetId / descriptionPrevious value: -"Asset ID to override (e.g. eth_1, as returned by the read tools)"New value: +"Asset ID to override (e.g. eth_1, as returned by the read tools) Only for operation set_fmv_override; required for each." - changed
Input schema / properties / counterpartyName / descriptionPrevious value: -"Counterparty name to assign; pass null to unset"New value: +"Counterparty name to assign; pass null to unset Only for operation update_journal_line." - changed
Input schema / properties / lineNumber / descriptionPrevious value: -"Journal entry line number (1-based)"New value: +"Journal entry line number (1-based) Only for operation update_journal_line; required for each." - changed
Input schema / properties / memo / descriptionPrevious value: -"New memo; pass null to clear it"New value: +"New memo; pass null to clear it Only for operation update_fields." - changed
Input schema / properties / newValueQuote / descriptionPrevious value: -"Exact per-unit decimal string in base currency, e.g. \"0\". Do not use price."New value: +"Exact per-unit decimal string in base currency, e.g. \"0\". Do not use price. Only for operation set_fmv_override; required for each." - changed
Input schema / properties / operation / descriptionPrevious value: -"Change memo, the full tag set, or the accounting operation type."New value: +"update_fields: Change memo, the full tag set, or the accounting operation type. update_journal_line: Change the ledger account, counterparty, or reporting-group assignments on one transaction's debit or credit line. set_fmv_override: Set a corrected fair market value per unit for one asset on the transaction and recompute dependent cost-basis records." - changed
Input schema / properties / operationType / descriptionPrevious value: -"New accounting operation type"New value: +"New accounting operation type Only for operation update_fields." - changed
Input schema / properties / pollIntervalMs / descriptionPrevious value: -"Polling interval in milliseconds, 100 to 5000 (default 500)"New value: +"Polling interval in milliseconds, 100 to 5000 (default 500) Not for operation update_journal_line." - changed
Input schema / properties / quoteCurrency / descriptionPrevious value: -"Optional quote currency (defaults to base currency)"New value: +"Optional quote currency (defaults to base currency) Only for operation set_fmv_override." - changed
Input schema / properties / quoteSource / descriptionPrevious value: -"Optional source/justification for the price"New value: +"Optional source/justification for the price Only for operation set_fmv_override." - changed
Input schema / properties / reason / descriptionPrevious value: -"Immutable root reason whose nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references"New value: +"Immutable root reason whose nonempty bytes are preserved exactly; use ptx:<uuid> for transaction references Only for operation set_fmv_override." - changed
Input schema / properties / responsibilityCenterAssignments / descriptionPrevious value: -"Typed responsibility-center assignment set, one per dimension. Replaces the line assignments; pass [] to clear every dimension. Type keys and center names come from list_journal_line_assignment_options, type: responsibility_center."New value: +"Typed responsibility-center assignment set, one per dimension. Replaces the line assignments; pass [] to clear every dimension. Type keys and center names come from list_journal_line_assignment_options, type: responsibility_center. Only for operation update_journal_line." - changed
Input schema / properties / subType / descriptionPrevious value: -"New operation sub-type (requires operationType)"New value: +"New operation sub-type (requires operationType) Only for operation update_fields." - changed
Input schema / properties / tags / descriptionPrevious value: -"Replace the full set of transaction tags"New value: +"Replace the full set of transaction tags Only for operation update_fields." - changed
Input schema / properties / timeoutMs / descriptionPrevious value: -"Maximum wait time in milliseconds, 1000 to 60000 (default 30000)"New value: +"Maximum wait time in milliseconds, 1000 to 60000 (default 30000) Not for operation update_journal_line." - changed
Input schema / properties / waitForCompletion / descriptionPrevious value: -"When true, poll queued request IDs and include terminal status/final state before returning"New value: +"When true, poll queued request IDs and include terminal status/final state before returning Not for operation update_journal_line."
- Changed
get_filter_options7 fields changed- removed
Input schema / oneOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-addresses" - ], - "type": "string" - }, - "mode": { - "$ref": "#/properties/mode" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName", - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-account-name" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-assets" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-counterparties" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-wallets" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-responsibility-centers" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-lot-presence" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-journal-entry-presence" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filter": { - "$ref": "#/properties/filter" - }, - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-status-counts" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-warnings" - ], - "type": "string" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "pageToken": { - "$ref": "#/properties/pageToken" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "selected": { - "$ref": "#/properties/selected" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "accounts" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - } -] - changed
Input schema / properties / filter / descriptionPrevious value: -"Human-readable Portfolio Transactions filter expression."New value: +"Human-readable Portfolio Transactions filter expression. Only for filterName portfolio-transaction-status-counts." - changed
Input schema / properties / mode / descriptionPrevious value: -"Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses."New value: +"Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses. Only for filterName portfolio-transaction-addresses; required for each." - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Requested number of resources to return. Oversized values are clamped to the route limit."New value: +"Requested number of resources to return. Oversized values are clamped to the route limit. Not for filterName accounts." - changed
Input schema / properties / pageToken / descriptionPrevious value: -"Opaque token returned by the previous list response."New value: +"Opaque token returned by the previous list response. Not for filterName accounts." - changed
Input schema / properties / search / descriptionPrevious value: -"Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields."New value: +"Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields. Not for filterName accounts." - changed
Input schema / properties / selected / descriptionPrevious value: -"Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array."New value: +"Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array. Not for filterName accounts."
- Changed
import_adjustment_journals4 fields changed- removed
Input schema / oneOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "description": "Parse the file and report what it would import, writing nothing. Always preview before posting.", - "enum": [ - "preview" - ], - "type": "string" - }, - "contentBase64": { - "$ref": "#/properties/contentBase64" - }, - "fileName": { - "$ref": "#/properties/fileName" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "action", - "contentBase64", - "fileName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "action": { - "description": "Commit the import that a preview of the same file produced.", - "enum": [ - "post" - ], - "type": "string" - }, - "contentBase64": { - "$ref": "#/properties/contentBase64" - }, - "fileName": { - "$ref": "#/properties/fileName" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "previewToken": { - "$ref": "#/properties/previewToken" - }, - "resolutions": { - "$ref": "#/properties/resolutions" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "action", - "contentBase64", - "fileName", - "previewToken", - "resolutions" - ], - "type": "object" - } -] - changed
Input schema / properties / action / descriptionPrevious value: -"Parse the file and report what it would import, writing nothing. Always preview before posting."New value: +"preview: Parse the file and report what it would import, writing nothing. Always preview before posting. post: Commit the import that a preview of the same file produced." - changed
Input schema / properties / previewToken / descriptionPrevious value: -"Token returned by the matching preview, proving the file has not changed since."New value: +"Token returned by the matching preview, proving the file has not changed since. Only for action post; required for each." - added
Input schema / properties / resolutions / descriptionAdded value: +"Only for action post; required for each."
- Changed
list_journal_line_assignment_options5 fields changed- removed
Input schema / oneOfRemoved value: -[ - { - "additionalProperties": false, - "properties": { - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "type": { - "description": "Ledger accounts assignable to a journal line.", - "enum": [ - "ledger_account" - ], - "type": "string" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "type" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "limit": { - "$ref": "#/properties/limit" - }, - "page": { - "$ref": "#/properties/page" - }, - "pageSize": { - "$ref": "#/properties/pageSize" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "type": { - "description": "Saved vendors, people, or organizations assignable to a journal line.", - "enum": [ - "counterparty" - ], - "type": "string" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "type" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "search": { - "$ref": "#/properties/search" - }, - "type": { - "description": "Departments, projects, or other reporting groups (responsibility centers) assignable to a journal line.", - "enum": [ - "responsibility_center" - ], - "type": "string" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "type" - ], - "type": "object" - } -] - changed
Input schema / properties / limit / descriptionPrevious value: -"Maximum items to return, maximum 100. Preferred MCP pagination field."New value: +"Maximum items to return, maximum 100. Preferred MCP pagination field. Only for type counterparty." - changed
Input schema / properties / page / descriptionPrevious value: -"Page number, starting at 1"New value: +"Page number, starting at 1 Only for type counterparty." - changed
Input schema / properties / pageSize / descriptionPrevious value: -"Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls."New value: +"Deprecated alias for limit, maximum 100. Prefer limit for new MCP calls. Only for type counterparty." - changed
Input schema / properties / type / descriptionPrevious value: -"Ledger accounts assignable to a journal line."New value: +"ledger_account: Ledger accounts assignable to a journal line. counterparty: Saved vendors, people, or organizations assignable to a journal line. responsibility_center: Departments, projects, or other reporting groups (responsibility centers) assignable to a journal line."
8 tool updates
- Changed
edit_accounting_rules11 fields changed- changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "jobId": { - "type": "string" - }, - "mode": { - "enum": [ - "sync", - "async" - ], - "type": "string" - }, - "result": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "data": {}, - "success": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "success" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "body": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "currentUsage": { - "type": "number" - }, - "limit": { - "type": "number" - }, - "usageType": { - "type": "string" - } - }, - "required": [ - "usageType", - "currentUsage", - "limit" - ], - "type": "object" - }, - {} - ] - }, - "message": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "name", - "message", - "body" - ], - "type": "object" - }, - "success": { - "const": false, - "type": "boolean" - } - }, - "required": [ - "success", - "error" - ], - "type": "object" - } - ] - }, - "status": { - "const": "queued", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "affectedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "candidateCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "changes": { - "items": { - "additionalProperties": false, - "properties": { - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "account": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "maxLength": 8, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "from", - "to" - ], - "type": "object" - }, - "counterparty": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "lineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "matchedButLost": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "responsibilityCenters": { - "items": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "to": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - } - }, - "required": [ - "responsibilityCenterTypeKey" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "lineNumber", - "responsibilityCenters", - "matchedButLost" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "portfolioTransactionId": { - "minLength": 1, - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "portfolioTransactionId", - "timestamp", - "lines" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "detail": { - "const": "compact", - "type": "string" - }, - "firstAffectedAt": { - "format": "date-time", - "type": "string" - }, - "lastAffectedAt": { - "format": "date-time", - "type": "string" - }, - "scannedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "truncatedBy": { - "enum": [ - "affected", - "budget", - "details", - "scanned" - ], - "type": "string" - } - }, - "required": [ - "detail", - "scannedCount", - "candidateCount", - "affectedCount", - "changes" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "jobId": { + "type": "string" + }, + "mode": { + "enum": [ + "sync", + "async" + ], + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "data": {}, + "success": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "success" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "body": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "currentUsage": { + "type": "number" + }, + "limit": { + "type": "number" + }, + "usageType": { + "type": "string" + } + }, + "required": [ + "usageType", + "currentUsage", + "limit" + ], + "type": "object" + }, + {} + ] + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message", + "body" + ], + "type": "object" + }, + "success": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "success", + "error" + ], + "type": "object" + } + ] + }, + "status": { + "const": "queued", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "const": "compact", + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes" + ], + "type": "object" + } +] - changed
Output schema / properties / changes / items / properties / lines / items / properties / account / properties / byRule / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleRef": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleRef", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } +] - changed
Output schema / properties / changes / items / properties / lines / items / properties / counterparty / properties / byRule / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleRef": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleRef", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } +] - removed
Output schema / properties / changes / items / properties / lines / items / properties / lineNumber / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / changes / items / properties / lines / items / properties / lineNumber / minimumAdded value: +1 - changed
Output schema / properties / changes / items / properties / lines / items / properties / matchedButLost / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleRef": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleRef", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } +] - changed
Output schema / properties / changes / items / properties / lines / items / properties / responsibilityCenters / items / properties / byRule / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleRef": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleRef", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } +] - removed
Output schema / properties / changes / items / properties / lines / items / properties / responsibilityCenters / items / properties / from / properties / percentageBps / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / changes / items / properties / lines / items / properties / responsibilityCenters / items / properties / from / properties / percentageBps / minimumAdded value: +1 - removed
Output schema / properties / changes / items / properties / lines / items / properties / responsibilityCenters / items / properties / to / properties / percentageBps / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / changes / items / properties / lines / items / properties / responsibilityCenters / items / properties / to / properties / percentageBps / minimumAdded value: +1
- Changed
get_filter_options2 fields changed- changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "data": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "identity": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "counterparty", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "addressBookItemType": { - "enum": [ - "CUSTOMER", - "VENDOR", - "EMPLOYEE", - "OTHER" - ], - "type": "string" - }, - "category": { - "const": "addressBook", - "type": "string" - } - }, - "required": [ - "category", - "address", - "addressBookItemType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "wallet", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "childAddresses": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "address", - "chainId" - ], - "type": "object" - }, - "type": "array" - }, - "walletName": { - "type": "string" - }, - "walletOwnerPortfolio": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "slug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - } - }, - "required": [ - "slug", - "name" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "category", - "address", - "walletName", - "walletType", - "childAddresses" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "category": { - "const": "raw", - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "category", - "address" - ], - "type": "object" - } - ] - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionAddress", - "type": "string" - }, - "transfersCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transfersCount", - "identity" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "accountType": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "assetId": { - "minLength": 1, - "type": "string" - }, - "currency": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAccountName", - "type": "string" - }, - "subType": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "accountNumber", - "name", - "accountType", - "subType", - "currency", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionAsset", - "type": "string" - }, - "quoteCurrency": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "totalValue": { - "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "assetId", - "symbol", - "name", - "totalValue", - "quoteCurrency", - "isSpam", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "counterpartyId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "lineCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "optionKind": { - "const": "portfolioTransactionCounterparty", - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "name", - "counterpartyId", - "lineCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "chainName": { - "minLength": 1, - "type": "string" - }, - "displayName": { - "minLength": 1, - "type": "string" - }, - "isBalanceMatch": { - "type": "boolean" - }, - "lastTransactionTimestamp": { - "format": "date-time", - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "operationsCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "optionKind": { - "const": "portfolioTransactionWallet", - "type": "string" - }, - "tokenCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - }, - "valueQuote": { - "minLength": 1, - "type": "string" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "chainId", - "address", - "displayName", - "chainName", - "walletType", - "operationsCount", - "tokenCount", - "isBalanceMatch" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionResponsibilityCenter", - "type": "string" - }, - "responsibilityCenterCode": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterKind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "responsibilityCenterTypeName": { - "minLength": 1, - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "responsibilityCenterName", - "responsibilityCenterTypeKey", - "responsibilityCenterTypeName", - "responsibilityCenterKind", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionLotPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withLots", - "withoutLots" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionJournalEntryPresence", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "withJournalEntries", - "withoutJournalEntries" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionStatusCount", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "metrics": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "count", - "type": "string" - }, - "unit": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "metricKind": { - "const": "money", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "currency" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "metricKind": { - "const": "percentage", - "type": "string" - }, - "unit": { - "const": "%", - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "metricKind", - "value", - "unit" - ], - "type": "object" - } - ] - }, - "minItems": 1, - "type": "array" - }, - "optionKind": { - "const": "portfolioTransactionWarning", - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "optionKind", - "value", - "label", - "transactionCount", - "metrics" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "nextPageToken": { - "minLength": 1, - "type": "string" - }, - "pageSize": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumbers": { - "items": { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "accountNumber", - "name" - ], - "type": "object" - }, - "type": "array" - }, - "accountTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "assets": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "cacheStatus": { - "enum": [ - "hit", - "miss", - "stale", - "bypass" - ], - "type": "string" - }, - "currencies": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "symbol": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "assetId", - "symbol" - ], - "type": "object" - }, - "type": "array" - }, - "hierarchy": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "parent", - "leaf" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "includeNoWallet": { - "additionalProperties": false, - "properties": { - "label": { - "const": "No wallet", - "type": "string" - }, - "value": { - "const": "noWallet", - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "normalBalanceTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "paymentLabelStates": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "withLabel", - "withoutLabel" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "revisionHash": { - "type": "string" - }, - "statuses": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "enum": [ - "active", - "archived" - ], - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "subTypes": { - "items": { - "additionalProperties": false, - "properties": { - "label": { - "minLength": 1, - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label" - ], - "type": "object" - }, - "type": "array" - }, - "wallets": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "minLength": 1, - "type": "string" - }, - "chainId": { - "minLength": 1, - "type": "string" - }, - "label": { - "minLength": 1, - "type": "string" - }, - "name": { - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "value", - "label", - "chainId", - "address", - "name" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "accountNumbers", - "accountTypes", - "subTypes", - "normalBalanceTypes", - "wallets", - "includeNoWallet", - "assets", - "currencies", - "statuses", - "paymentLabelStates", - "hierarchy", - "cacheStatus", - "revisionHash" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "cacheStatus": { - "const": "hit", - "type": "string" - }, - "data": { - "items": {}, - "maxItems": 0, - "minItems": 0, - "type": "array" - }, - "pagination": { - "additionalProperties": false, - "properties": { - "pageSize": { - "type": "number" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - "revisionHash": { - "type": "string" - } - }, - "required": [ - "data", - "pagination", - "cacheStatus", - "revisionHash" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "data": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "identity": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "counterparty", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "addressBookItemType": { + "enum": [ + "CUSTOMER", + "VENDOR", + "EMPLOYEE", + "OTHER" + ], + "type": "string" + }, + "category": { + "const": "addressBook", + "type": "string" + } + }, + "required": [ + "category", + "address", + "addressBookItemType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "wallet", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "childAddresses": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "address", + "chainId" + ], + "type": "object" + }, + "type": "array" + }, + "walletName": { + "type": "string" + }, + "walletOwnerPortfolio": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "slug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + } + }, + "required": [ + "slug", + "name" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "category", + "address", + "walletName", + "walletType", + "childAddresses" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "raw", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + } + ] + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionAddress", + "type": "string" + }, + "transfersCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transfersCount", + "identity" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "accountType": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "assetId": { + "minLength": 1, + "type": "string" + }, + "currency": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAccountName", + "type": "string" + }, + "subType": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "accountNumber", + "name", + "accountType", + "subType", + "currency", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAsset", + "type": "string" + }, + "quoteCurrency": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "totalValue": { + "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "assetId", + "symbol", + "name", + "totalValue", + "quoteCurrency", + "isSpam", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "counterpartyId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "lineCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionCounterparty", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "name", + "counterpartyId", + "lineCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "displayName": { + "minLength": 1, + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "operationsCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "optionKind": { + "const": "portfolioTransactionWallet", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + }, + "valueQuote": { + "minLength": 1, + "type": "string" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "chainId", + "address", + "displayName", + "chainName", + "walletType", + "operationsCount", + "tokenCount", + "isBalanceMatch" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionResponsibilityCenter", + "type": "string" + }, + "responsibilityCenterCode": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterKind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "responsibilityCenterTypeName": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "responsibilityCenterName", + "responsibilityCenterTypeKey", + "responsibilityCenterTypeName", + "responsibilityCenterKind", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionLotPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withLots", + "withoutLots" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionJournalEntryPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withJournalEntries", + "withoutJournalEntries" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionStatusCount", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionWarning", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumbers": { + "items": { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "accountNumber", + "name" + ], + "type": "object" + }, + "type": "array" + }, + "accountTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "assets": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "currencies": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "hierarchy": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "parent", + "leaf" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "includeNoWallet": { + "additionalProperties": false, + "properties": { + "label": { + "const": "No wallet", + "type": "string" + }, + "value": { + "const": "noWallet", + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "normalBalanceTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "paymentLabelStates": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "withLabel", + "withoutLabel" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "revisionHash": { + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "active", + "archived" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "subTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "wallets": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "chainId", + "address", + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "accountNumbers", + "accountTypes", + "subTypes", + "normalBalanceTypes", + "wallets", + "includeNoWallet", + "assets", + "currencies", + "statuses", + "paymentLabelStates", + "hierarchy", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "const": "hit", + "type": "string" + }, + "data": { + "items": {}, + "maxItems": 0, + "minItems": 0, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + } +] - changed
Output schema / properties / pagination / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "nextPageToken": { - "minLength": 1, - "type": "string" - }, - "pageSize": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "pageSize": { - "type": "number" - } - }, - "required": [ - "pageSize" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + } +]
- Changed
get_journal_entry2 fields changed- removed
Output schema / properties / adjustmentJournalImportProvenance / properties / sourceRows / items / properties / journalLineNumber / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / adjustmentJournalImportProvenance / properties / sourceRows / items / properties / journalLineNumber / minimumAdded value: +1
- Changed
import_adjustment_journals3 fields changed- changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "const": "preview", - "type": "string" - }, - "issues": { - "oneOf": [ - { - "$ref": "#/$defs/AjFullIssues" - }, - { - "$ref": "#/$defs/AjIssueSummary" - } - ] - }, - "journals": { - "items": { - "$ref": "#/$defs/AjPreviewJournal" - }, - "maxItems": 3, - "type": "array" - }, - "omittedJournalCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "previewToken": { - "pattern": "^[0-9a-f]{64}$", - "type": "string" - }, - "readyToPost": { - "type": "boolean" - }, - "summary": { - "$ref": "#/$defs/AjPreviewSummary" - } - }, - "required": [ - "action", - "previewToken", - "readyToPost", - "summary", - "journals", - "omittedJournalCount", - "issues" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "action": { - "const": "post", - "type": "string" - }, - "createdJournalCount": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "journals": { - "items": { - "$ref": "#/$defs/AjPostJournal" - }, - "maxItems": 3, - "type": "array" - }, - "omittedJournalCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "action", - "importRef", - "createdJournalCount", - "journals", - "omittedJournalCount" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "const": "preview", + "type": "string" + }, + "issues": { + "oneOf": [ + { + "$ref": "#/$defs/AjFullIssues" + }, + { + "$ref": "#/$defs/AjIssueSummary" + } + ] + }, + "journals": { + "items": { + "$ref": "#/$defs/AjPreviewJournal" + }, + "maxItems": 3, + "type": "array" + }, + "omittedJournalCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "previewToken": { + "pattern": "^[0-9a-f]{64}$", + "type": "string" + }, + "readyToPost": { + "type": "boolean" + }, + "summary": { + "$ref": "#/$defs/AjPreviewSummary" + } + }, + "required": [ + "action", + "previewToken", + "readyToPost", + "summary", + "journals", + "omittedJournalCount", + "issues" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "action": { + "const": "post", + "type": "string" + }, + "createdJournalCount": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "journals": { + "items": { + "$ref": "#/$defs/AjPostJournal" + }, + "maxItems": 3, + "type": "array" + }, + "omittedJournalCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "action", + "importRef", + "createdJournalCount", + "journals", + "omittedJournalCount" + ], + "type": "object" + } +] - removed
Output schema / properties / createdJournalCount / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / createdJournalCount / minimumAdded value: +1
- Changed
list_accounting_rules8 fields changed- changed
Input schema / properties / accountNumbers / descriptionPrevious value: -"Keep only rules that reference one of these ledger accounts."New value: +"Ledger account numbers as CSV or repeated query values." - changed
Input schema / properties / actionTypes / descriptionPrevious value: -"Keep only rules that perform one of these actions."New value: +"Action types as CSV or repeated query values." - changed
Input schema / properties / assetIds / descriptionPrevious value: -"Keep only rules that reference one of these assets, by asset symbol."New value: +"Asset ids as CSV or repeated query values." - changed
Input schema / properties / conditionFields / descriptionPrevious value: -"Keep only rules that test one of these transaction fields."New value: +"Condition fields as CSV or repeated query values." - changed
Input schema / properties / counterpartyNames / descriptionPrevious value: -"Keep only rules that reference one of these counterparties."New value: +"Counterparty names as CSV or repeated query values." - changed
Input schema / properties / wallets / descriptionPrevious value: -"Keep only rules whose conditions name one of these wallets."New value: +"Wallet selectors as chainId:walletAddress values." - removed
Output schema / properties / pagination / properties / pageSize / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / pagination / properties / pageSize / minimumAdded value: +1
- Changed
list_portfolio_transactions28 fields changed- added
Output schema / $defs / JournalEntryResponseDtoAdded value: +{ + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" +} - added
Output schema / $defs / RawTransactionCompleteDtoAdded value: +{ + "additionalProperties": false, + "properties": { + "blockHeight": { + "pattern": "^\\d+$", + "type": "string" + }, + "hash": { + "type": "string" + }, + "id": { + "minLength": 1, + "type": "string" + }, + "memo": { + "type": "string" + }, + "processingState": { + "enum": [ + "PROCESSED", + "PARTIAL", + "UNPROCESSED" + ], + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "chainId", + "address", + "type" + ], + "type": "object" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "defi": { + "additionalProperties": false, + "properties": { + "operation": { + "anyOf": [ + { + "const": "PROTOCOL_DEPOSIT", + "type": "string" + }, + { + "const": "PROTOCOL_WITHDRAW", + "type": "string" + }, + { + "const": "VAULT_DEPOSIT", + "type": "string" + }, + { + "const": "VAULT_WITHDRAW", + "type": "string" + }, + { + "const": "SWAP", + "type": "string" + }, + { + "const": "PROVIDE_LIQUIDITY", + "type": "string" + }, + { + "const": "REMOVE_LIQUIDITY", + "type": "string" + }, + { + "const": "LEND", + "type": "string" + }, + { + "const": "WITHDRAW_LEND", + "type": "string" + }, + { + "const": "LEND_REDUCE", + "type": "string" + }, + { + "const": "BORROW", + "type": "string" + }, + { + "const": "REPAY", + "type": "string" + }, + { + "const": "LOAN_LIQUIDATION", + "type": "string" + }, + { + "const": "STAKE", + "type": "string" + }, + { + "const": "UNSTAKE", + "type": "string" + }, + { + "const": "CLAIM_REWARDS", + "type": "string" + } + ] + }, + "positionRef": { + "type": "string" + }, + "tokenRole": { + "anyOf": [ + { + "const": "UNDERLYING", + "type": "string" + }, + { + "const": "COLLATERAL", + "type": "string" + }, + { + "const": "RECEIPT_TOKEN", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "LIABILITY_TOKEN", + "type": "string" + }, + { + "const": "REWARD", + "type": "string" + }, + { + "const": "OTHER", + "type": "string" + } + ] + } + }, + "type": "object" + }, + "from": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "portfolioTransactionId": { + "type": "string" + }, + "quote": { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "meta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "maximum": 8210266876799, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "source": { + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "type": "object" + }, + "to": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "token": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "decimals": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "isSpam": { + "type": "boolean" + }, + "representsTokenAddress": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "type": { + "anyOf": [ + { + "const": "ERC20", + "type": "string" + }, + { + "const": "NATIVE", + "type": "string" + }, + { + "const": "FIAT", + "type": "string" + }, + { + "const": "NFT", + "type": "string" + }, + { + "const": "REBASE_LST", + "type": "string" + }, + { + "const": "INTEREST_BEARING", + "type": "string" + }, + { + "const": "VALUE_ACCRUING", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "DEBT", + "type": "string" + }, + { + "const": "REFLECT", + "type": "string" + }, + { + "const": "VOTE_ESCROWED", + "type": "string" + } + ] + } + }, + "required": [ + "chainId", + "address", + "assetId", + "symbol", + "type", + "decimals", + "isSpam" + ], + "type": "object" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "type": { + "enum": [ + "IN", + "OUT", + "GAS", + "SELF" + ], + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "txIndex", + "type", + "from", + "to", + "token", + "value" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "id", + "wallet", + "hash", + "blockHeight", + "timestamp", + "processingState", + "walletOperations" + ], + "type": "object" +} - added
Output schema / $defs / RawTransactionWithDetailsDto__schema0Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - removed
Output schema / $defs / __schema0Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/$defs/__schema0" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/$defs/__schema0" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - added
Output schema / properties / data / items / properties / journalEntry / $refAdded value: +"#/$defs/JournalEntryResponseDto" - removed
Output schema / properties / data / items / properties / journalEntry / additionalPropertiesRemoved value: -false - removed
Output schema / properties / data / items / properties / journalEntry / propertiesRemoved value: -{ - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } -} - removed
Output schema / properties / data / items / properties / journalEntry / requiredRemoved value: -[ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" -] - removed
Output schema / properties / data / items / properties / journalEntry / typeRemoved value: -"object" - added
Output schema / properties / data / items / properties / rawTransactions / items / $refAdded value: +"#/$defs/RawTransactionCompleteDto" - removed
Output schema / properties / data / items / properties / rawTransactions / items / additionalPropertiesRemoved value: -false - removed
Output schema / properties / data / items / properties / rawTransactions / items / propertiesRemoved value: -{ - "blockHeight": { - "pattern": "^\\d+$", - "type": "string" - }, - "hash": { - "type": "string" - }, - "id": { - "minLength": 1, - "type": "string" - }, - "memo": { - "type": "string" - }, - "processingState": { - "enum": [ - "PROCESSED", - "PARTIAL", - "UNPROCESSED" - ], - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "name": { - "type": "string" - }, - "type": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "chainId", - "address", - "type" - ], - "type": "object" - }, - "walletOperations": { - "items": { - "additionalProperties": false, - "properties": { - "defi": { - "additionalProperties": false, - "properties": { - "operation": { - "anyOf": [ - { - "const": "PROTOCOL_DEPOSIT", - "type": "string" - }, - { - "const": "PROTOCOL_WITHDRAW", - "type": "string" - }, - { - "const": "VAULT_DEPOSIT", - "type": "string" - }, - { - "const": "VAULT_WITHDRAW", - "type": "string" - }, - { - "const": "SWAP", - "type": "string" - }, - { - "const": "PROVIDE_LIQUIDITY", - "type": "string" - }, - { - "const": "REMOVE_LIQUIDITY", - "type": "string" - }, - { - "const": "LEND", - "type": "string" - }, - { - "const": "WITHDRAW_LEND", - "type": "string" - }, - { - "const": "LEND_REDUCE", - "type": "string" - }, - { - "const": "BORROW", - "type": "string" - }, - { - "const": "REPAY", - "type": "string" - }, - { - "const": "LOAN_LIQUIDATION", - "type": "string" - }, - { - "const": "STAKE", - "type": "string" - }, - { - "const": "UNSTAKE", - "type": "string" - }, - { - "const": "CLAIM_REWARDS", - "type": "string" - } - ] - }, - "positionRef": { - "type": "string" - }, - "tokenRole": { - "anyOf": [ - { - "const": "UNDERLYING", - "type": "string" - }, - { - "const": "COLLATERAL", - "type": "string" - }, - { - "const": "RECEIPT_TOKEN", - "type": "string" - }, - { - "const": "LP_SHARE", - "type": "string" - }, - { - "const": "LIABILITY_TOKEN", - "type": "string" - }, - { - "const": "REWARD", - "type": "string" - }, - { - "const": "OTHER", - "type": "string" - } - ] - } - }, - "type": "object" - }, - "from": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "label": { - "type": "string" - } - }, - "required": [ - "address" - ], - "type": "object" - }, - "portfolioTransactionId": { - "type": "string" - }, - "quote": { - "additionalProperties": false, - "properties": { - "currency": { - "type": "string" - }, - "meta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "source": { - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "type": "object" - }, - "to": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "label": { - "type": "string" - } - }, - "required": [ - "address" - ], - "type": "object" - }, - "token": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "decimals": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "isSpam": { - "type": "boolean" - }, - "representsTokenAddress": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "symbol": { - "type": "string" - }, - "type": { - "anyOf": [ - { - "const": "ERC20", - "type": "string" - }, - { - "const": "NATIVE", - "type": "string" - }, - { - "const": "FIAT", - "type": "string" - }, - { - "const": "NFT", - "type": "string" - }, - { - "const": "REBASE_LST", - "type": "string" - }, - { - "const": "INTEREST_BEARING", - "type": "string" - }, - { - "const": "VALUE_ACCRUING", - "type": "string" - }, - { - "const": "LP_SHARE", - "type": "string" - }, - { - "const": "DEBT", - "type": "string" - }, - { - "const": "REFLECT", - "type": "string" - }, - { - "const": "VOTE_ESCROWED", - "type": "string" - } - ] - } - }, - "required": [ - "chainId", - "address", - "assetId", - "symbol", - "type", - "decimals", - "isSpam" - ], - "type": "object" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "type": { - "enum": [ - "IN", - "OUT", - "GAS", - "SELF" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "txIndex", - "type", - "from", - "to", - "token", - "value" - ], - "type": "object" - }, - "type": "array" - } -} - removed
Output schema / properties / data / items / properties / rawTransactions / items / requiredRemoved value: -[ - "id", - "wallet", - "hash", - "blockHeight", - "timestamp", - "processingState", - "walletOperations" -] - removed
Output schema / properties / data / items / properties / rawTransactions / items / typeRemoved value: -"object" - removed
Output schema / properties / data / items / properties / walletOperations / items / properties / quoteMeta / properties / ts / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / data / items / properties / walletOperations / items / properties / quoteMeta / properties / ts / minimumAdded value: +1 - added
Output schema / properties / journalEntry / $refAdded value: +"#/$defs/JournalEntryResponseDto" - removed
Output schema / properties / journalEntry / additionalPropertiesRemoved value: -false - removed
Output schema / properties / journalEntry / propertiesRemoved value: -{ - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } -} - removed
Output schema / properties / journalEntry / requiredRemoved value: -[ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" -] - removed
Output schema / properties / journalEntry / typeRemoved value: -"object" - removed
Output schema / properties / pagination / properties / pageSize / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / pagination / properties / pageSize / minimumAdded value: +1 - changed
Output schema / properties / rawTransactions / items / properties / details / $refPrevious value: -"#/$defs/__schema0"New value: +"#/$defs/RawTransactionWithDetailsDto__schema0" - removed
Output schema / properties / rawTransactions / items / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / rawTransactions / items / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / minimumAdded value: +1 - removed
Output schema / properties / walletOperations / items / properties / quoteMeta / properties / ts / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / walletOperations / items / properties / quoteMeta / properties / ts / minimumAdded value: +1
- Changed
list_raw_transactions9 fields changed- changed
Input schema / properties / includeSpamTokens / descriptionPrevious value: -"Include activity for tokens flagged as spam. Excluded by default."New value: +"Include transactions whose operations contain only spam tokens; defaults to false." - changed
Input schema / properties / sort / descriptionPrevious value: -"Timestamp order. Prefix with - for newest first."New value: +"Timestamp order. Use timestamp for ascending or -timestamp for descending; defaults to -timestamp." - added
Output schema / $defs / RawTransactionWithDetailsDto__schema0Added value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/$defs/RawTransactionWithDetailsDto__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] +} - removed
Output schema / $defs / __schema0Removed value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "number" - }, - { - "type": "boolean" - }, - { - "type": "null" - }, - { - "items": { - "$ref": "#/$defs/__schema0" - }, - "type": "array" - }, - { - "additionalProperties": { - "$ref": "#/$defs/__schema0" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - } - ] -} - changed
Output schema / properties / details / $refPrevious value: -"#/$defs/__schema0"New value: +"#/$defs/RawTransactionWithDetailsDto__schema0" - removed
Output schema / properties / pagination / properties / pageSize / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / pagination / properties / pageSize / minimumAdded value: +1 - removed
Output schema / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / exclusiveMinimumRemoved value: -0 - added
Output schema / properties / walletOperations / items / properties / quote / properties / meta / properties / ts / minimumAdded value: +1
- Changed
list_wallets6 fields changed- added
Output schema / $defsAdded value: +{ + "WalletDetailsResponseDto": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "lastSyncAt": { + "format": "date-time", + "type": "string" + }, + "name": { + "type": "string" + }, + "syncMessages": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "code": { + "const": "EXCHANGE_RECONNECT_REQUIRED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "ExternalServiceAuthenticationError", + "type": "string" + }, + "provider": { + "minLength": 1, + "type": "string" + }, + "reconnectRequired": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "provider", + "reconnectRequired", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_PROCESSING_FAILED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncProcessingError", + "type": "string" + }, + "retryable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "retryable", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_WARNING", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncWarning", + "type": "string" + } + }, + "required": [ + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "syncStatus": { + "enum": [ + "pending", + "syncing", + "synced", + "failed" + ], + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "chainId", + "address", + "createdAt", + "syncMessages", + "syncStatus", + "transactionCount" + ], + "type": "object" + } +} - added
Output schema / properties / data / items / $refAdded value: +"#/$defs/WalletDetailsResponseDto" - removed
Output schema / properties / data / items / additionalPropertiesRemoved value: -false - removed
Output schema / properties / data / items / propertiesRemoved value: -{ - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "lastSyncAt": { - "format": "date-time", - "type": "string" - }, - "name": { - "type": "string" - }, - "syncMessages": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "code": { - "const": "EXCHANGE_RECONNECT_REQUIRED", - "type": "string" - }, - "details": { - "additionalProperties": false, - "properties": { - "errorType": { - "const": "ExternalServiceAuthenticationError", - "type": "string" - }, - "provider": { - "minLength": 1, - "type": "string" - }, - "reconnectRequired": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "provider", - "reconnectRequired", - "errorType" - ], - "type": "object" - }, - "message": { - "minLength": 1, - "type": "string" - }, - "severity": { - "default": "ERROR", - "enum": [ - "ERROR", - "WARN" - ], - "type": "string" - } - }, - "required": [ - "code", - "message", - "severity", - "details" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "code": { - "const": "SYNC_PROCESSING_FAILED", - "type": "string" - }, - "details": { - "additionalProperties": false, - "properties": { - "errorType": { - "const": "SyncProcessingError", - "type": "string" - }, - "retryable": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "retryable", - "errorType" - ], - "type": "object" - }, - "message": { - "minLength": 1, - "type": "string" - }, - "severity": { - "default": "ERROR", - "enum": [ - "ERROR", - "WARN" - ], - "type": "string" - } - }, - "required": [ - "code", - "message", - "severity", - "details" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "code": { - "const": "SYNC_WARNING", - "type": "string" - }, - "details": { - "additionalProperties": false, - "properties": { - "errorType": { - "const": "SyncWarning", - "type": "string" - } - }, - "required": [ - "errorType" - ], - "type": "object" - }, - "message": { - "minLength": 1, - "type": "string" - }, - "severity": { - "default": "ERROR", - "enum": [ - "ERROR", - "WARN" - ], - "type": "string" - } - }, - "required": [ - "code", - "message", - "severity", - "details" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "syncStatus": { - "enum": [ - "pending", - "syncing", - "synced", - "failed" - ], - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } -} - removed
Output schema / properties / data / items / requiredRemoved value: -[ - "chainId", - "address", - "createdAt", - "syncMessages", - "syncStatus", - "transactionCount" -] - removed
Output schema / properties / data / items / typeRemoved value: -"object"
3 tool updates
- Changed
edit_accounting_rules4 fields changed- changed
Output schema / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "jobId": { - "type": "string" - }, - "mode": { - "enum": [ - "sync", - "async" - ], - "type": "string" - }, - "result": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "data": {}, - "success": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "success" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "body": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "currentUsage": { - "type": "number" - }, - "limit": { - "type": "number" - }, - "usageType": { - "type": "string" - } - }, - "required": [ - "usageType", - "currentUsage", - "limit" - ], - "type": "object" - }, - {} - ] - }, - "message": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "name", - "message", - "body" - ], - "type": "object" - }, - "success": { - "const": false, - "type": "boolean" - } - }, - "required": [ - "success", - "error" - ], - "type": "object" - } - ] - }, - "status": { - "const": "queued", - "type": "string" - } - }, - "required": [ - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "affectedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "candidateCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "changes": { - "items": { - "additionalProperties": false, - "properties": { - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "account": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "maxLength": 8, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "from", - "to" - ], - "type": "object" - }, - "counterparty": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "lineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "matchedButLost": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "responsibilityCenters": { - "items": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "to": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - } - }, - "required": [ - "responsibilityCenterTypeKey" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "lineNumber", - "responsibilityCenters", - "matchedButLost" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "portfolioTransactionId": { - "minLength": 1, - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "portfolioTransactionId", - "timestamp", - "lines" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "detail": { - "const": "compact", - "type": "string" - }, - "firstAffectedAt": { - "format": "date-time", - "type": "string" - }, - "lastAffectedAt": { - "format": "date-time", - "type": "string" - }, - "scannedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "truncatedBy": { - "enum": [ - "affected", - "budget", - "details", - "scanned" - ], - "type": "string" - } - }, - "required": [ - "detail", - "scannedCount", - "candidateCount", - "affectedCount", - "changes" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "affectedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "candidateCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "changes": { - "items": { - "additionalProperties": false, - "properties": { - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "account": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "maxLength": 8, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "from", - "to" - ], - "type": "object" - }, - "counterparty": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "lineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "matchedButLost": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "responsibilityCenters": { - "items": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "to": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - } - }, - "required": [ - "responsibilityCenterTypeKey" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "lineNumber", - "responsibilityCenters", - "matchedButLost" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "portfolioTransactionId": { - "minLength": 1, - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "portfolioTransactionId", - "timestamp", - "lines" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "detail": { - "const": "transactions", - "type": "string" - }, - "firstAffectedAt": { - "format": "date-time", - "type": "string" - }, - "lastAffectedAt": { - "format": "date-time", - "type": "string" - }, - "scannedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "transactionViews": { - "items": { - "additionalProperties": false, - "properties": { - "classification": { - "additionalProperties": false, - "properties": { - "detail": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "state": { - "enum": [ - "categorized", - "uncategorized", - "error" - ], - "type": "string" - }, - "suggestedAction": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "tool": { - "type": "string" - } - }, - "required": [ - "description" - ], - "type": "object" - } - }, - "required": [ - "state" - ], - "type": "object" - }, - "errorDetails": { - "items": {}, - "type": "array" - }, - "errorMessage": { - "type": "string" - }, - "fileAttachments": { - "items": {}, - "type": "array" - }, - "id": { - "type": "string" - }, - "intercompanyPair": { - "additionalProperties": false, - "properties": { - "counterpartOperationType": { - "type": "string" - }, - "counterpartPortfolioName": { - "type": "string" - }, - "counterpartPortfolioSlug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - }, - "counterpartPortfolioTransactionId": { - "type": "string" - }, - "counterpartStatus": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - }, - "counterpartSubType": { - "type": "string" - }, - "lotLinkCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "pairId": { - "type": "string" - }, - "side": { - "enum": [ - "SEND", - "RECEIVE" - ], - "type": "string" - }, - "treatment": { - "type": "string" - } - }, - "required": [ - "pairId", - "side", - "counterpartPortfolioName", - "counterpartPortfolioSlug", - "counterpartPortfolioTransactionId", - "counterpartOperationType", - "counterpartStatus", - "lotLinkCount" - ], - "type": "object" - }, - "journalEntry": { - "additionalProperties": false, - "properties": { - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } - }, - "required": [ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionContext": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "timestamp": { - "type": "string" - }, - "walletOperations": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "defiOperation": { - "type": "string" - }, - "defiPositionId": { - "type": "string" - }, - "defiPositionRef": { - "type": "string" - }, - "fromAddress": { - "type": "string" - }, - "fromAddressLabel": { - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "quoteCurrency": { - "type": "string" - }, - "quoteMeta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "quoteSource": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "toAddress": { - "type": "string" - }, - "toAddressLabel": { - "type": "string" - }, - "tokenAddress": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "valueQuote": { - "type": "string" - }, - "walletAddress": { - "type": "string" - }, - "walletName": { - "type": "string" - }, - "walletTransactionId": { - "type": "string" - } - }, - "required": [ - "type", - "txHash", - "chainId", - "txIndex", - "walletTransactionId", - "fromAddress", - "toAddress", - "value", - "tokenAddress", - "isSpam", - "walletName", - "walletAddress" - ], - "type": "object" - }, - "type": "array" - }, - "walletSource": { - "additionalProperties": false, - "properties": { - "blockHeight": { - "type": "string" - }, - "rawTransactionId": { - "type": "string" - }, - "rawTransactionSource": { - "type": "string" - }, - "timestamp": { - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "wallet", - "walletType", - "rawTransactionId", - "rawTransactionSource", - "blockHeight", - "timestamp" - ], - "type": "object" - } - }, - "required": [ - "id", - "operationType", - "classification", - "timestamp", - "status", - "tags", - "fileAttachments", - "walletOperations" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "truncatedBy": { - "enum": [ - "affected", - "budget", - "details", - "scanned" - ], - "type": "string" - } - }, - "required": [ - "detail", - "scannedCount", - "candidateCount", - "affectedCount", - "changes", - "transactionViews" - ], - "type": "object" - } - ], - "properties": { - "affectedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "candidateCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "changes": { - "items": { - "additionalProperties": false, - "properties": { - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "account": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "maxLength": 8, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "from", - "to" - ], - "type": "object" - }, - "counterparty": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "minLength": 1, - "type": "string" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "to": { - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "lineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "matchedButLost": { - "items": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version", - "output" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "output": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "account", - "counterparty" - ], - "type": "string" - } - }, - "required": [ - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "responsibilityCenter", - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "kind", - "responsibilityCenterTypeKey" - ], - "type": "object" - } - ] - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version", - "output" - ], - "type": "object" - } - ] - }, - "type": "array" - }, - "responsibilityCenters": { - "items": { - "additionalProperties": false, - "properties": { - "byRule": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "saved", - "type": "string" - }, - "ruleId": { - "minLength": 1, - "type": "string" - }, - "version": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - } - }, - "required": [ - "kind", - "ruleId", - "version" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "const": "draft", - "type": "string" - }, - "label": { - "const": "draft", - "type": "string" - }, - "version": { - "const": 1, - "type": "number" - } - }, - "required": [ - "kind", - "label", - "version" - ], - "type": "object" - } - ] - }, - "from": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "lockedBy": { - "enum": [ - "MANUAL", - "MANUAL_CLEARED", - "PAYMENT_LINK", - "SYSTEM_RULE" - ], - "type": "string" - }, - "responsibilityCenterTypeKey": { - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - }, - "to": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - } - }, - "required": [ - "responsibilityCenterTypeKey" - ], - "type": "object" - }, - "type": "array" - } - }, - "required": [ - "lineNumber", - "responsibilityCenters", - "matchedButLost" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "portfolioTransactionId": { - "minLength": 1, - "type": "string" - }, - "timestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "portfolioTransactionId", - "timestamp", - "lines" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "detail": { - "enum": [ - "compact", - "transactions" - ], - "type": "string" - }, - "firstAffectedAt": { - "format": "date-time", - "type": "string" - }, - "lastAffectedAt": { - "format": "date-time", - "type": "string" - }, - "scannedCount": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "transactionViews": { - "items": { - "additionalProperties": false, - "properties": { - "classification": { - "additionalProperties": false, - "properties": { - "detail": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "state": { - "enum": [ - "categorized", - "uncategorized", - "error" - ], - "type": "string" - }, - "suggestedAction": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "tool": { - "type": "string" - } - }, - "required": [ - "description" - ], - "type": "object" - } - }, - "required": [ - "state" - ], - "type": "object" - }, - "errorDetails": { - "items": {}, - "type": "array" - }, - "errorMessage": { - "type": "string" - }, - "fileAttachments": { - "items": {}, - "type": "array" - }, - "id": { - "type": "string" - }, - "intercompanyPair": { - "additionalProperties": false, - "properties": { - "counterpartOperationType": { - "type": "string" - }, - "counterpartPortfolioName": { - "type": "string" - }, - "counterpartPortfolioSlug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - }, - "counterpartPortfolioTransactionId": { - "type": "string" - }, - "counterpartStatus": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - }, - "counterpartSubType": { - "type": "string" - }, - "lotLinkCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "pairId": { - "type": "string" - }, - "side": { - "enum": [ - "SEND", - "RECEIVE" - ], - "type": "string" - }, - "treatment": { - "type": "string" - } - }, - "required": [ - "pairId", - "side", - "counterpartPortfolioName", - "counterpartPortfolioSlug", - "counterpartPortfolioTransactionId", - "counterpartOperationType", - "counterpartStatus", - "lotLinkCount" - ], - "type": "object" - }, - "journalEntry": { - "additionalProperties": false, - "properties": { - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } - }, - "required": [ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionContext": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "timestamp": { - "type": "string" - }, - "walletOperations": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "defiOperation": { - "type": "string" - }, - "defiPositionId": { - "type": "string" - }, - "defiPositionRef": { - "type": "string" - }, - "fromAddress": { - "type": "string" - }, - "fromAddressLabel": { - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "quoteCurrency": { - "type": "string" - }, - "quoteMeta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "quoteSource": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "toAddress": { - "type": "string" - }, - "toAddressLabel": { - "type": "string" - }, - "tokenAddress": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "valueQuote": { - "type": "string" - }, - "walletAddress": { - "type": "string" - }, - "walletName": { - "type": "string" - }, - "walletTransactionId": { - "type": "string" - } - }, - "required": [ - "type", - "txHash", - "chainId", - "txIndex", - "walletTransactionId", - "fromAddress", - "toAddress", - "value", - "tokenAddress", - "isSpam", - "walletName", - "walletAddress" - ], - "type": "object" - }, - "type": "array" - }, - "walletSource": { - "additionalProperties": false, - "properties": { - "blockHeight": { - "type": "string" - }, - "rawTransactionId": { - "type": "string" - }, - "rawTransactionSource": { - "type": "string" - }, - "timestamp": { - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "wallet", - "walletType", - "rawTransactionId", - "rawTransactionSource", - "blockHeight", - "timestamp" - ], - "type": "object" - } - }, - "required": [ - "id", - "operationType", - "classification", - "timestamp", - "status", - "tags", - "fileAttachments", - "walletOperations" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" - }, - "truncatedBy": { - "enum": [ - "affected", - "budget", - "details", - "scanned" - ], - "type": "string" - } - }, - "required": [ - "detail", - "scannedCount", - "candidateCount", - "affectedCount", - "changes" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "jobId": { + "type": "string" + }, + "mode": { + "enum": [ + "sync", + "async" + ], + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "data": {}, + "success": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "success" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "body": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "currentUsage": { + "type": "number" + }, + "limit": { + "type": "number" + }, + "usageType": { + "type": "string" + } + }, + "required": [ + "usageType", + "currentUsage", + "limit" + ], + "type": "object" + }, + {} + ] + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message", + "body" + ], + "type": "object" + }, + "success": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "success", + "error" + ], + "type": "object" + } + ] + }, + "status": { + "const": "queued", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "const": "compact", + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes" + ], + "type": "object" + } +] - added
Output schema / properties / detail / constAdded value: +"compact" - removed
Output schema / properties / detail / enumRemoved value: -[ - "compact", - "transactions" -] - removed
Output schema / properties / transactionViewsRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "classification": { - "additionalProperties": false, - "properties": { - "detail": { - "type": "string" - }, - "reason": { - "type": "string" - }, - "state": { - "enum": [ - "categorized", - "uncategorized", - "error" - ], - "type": "string" - }, - "suggestedAction": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "tool": { - "type": "string" - } - }, - "required": [ - "description" - ], - "type": "object" - } - }, - "required": [ - "state" - ], - "type": "object" - }, - "errorDetails": { - "items": {}, - "type": "array" - }, - "errorMessage": { - "type": "string" - }, - "fileAttachments": { - "items": {}, - "type": "array" - }, - "id": { - "type": "string" - }, - "intercompanyPair": { - "additionalProperties": false, - "properties": { - "counterpartOperationType": { - "type": "string" - }, - "counterpartPortfolioName": { - "type": "string" - }, - "counterpartPortfolioSlug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - }, - "counterpartPortfolioTransactionId": { - "type": "string" - }, - "counterpartStatus": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - }, - "counterpartSubType": { - "type": "string" - }, - "lotLinkCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "pairId": { - "type": "string" - }, - "side": { - "enum": [ - "SEND", - "RECEIVE" - ], - "type": "string" - }, - "treatment": { - "type": "string" - } - }, - "required": [ - "pairId", - "side", - "counterpartPortfolioName", - "counterpartPortfolioSlug", - "counterpartPortfolioTransactionId", - "counterpartOperationType", - "counterpartStatus", - "lotLinkCount" - ], - "type": "object" - }, - "journalEntry": { - "additionalProperties": false, - "properties": { - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } - }, - "required": [ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionContext": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "tags": { - "items": { - "type": "string" - }, - "type": "array" - }, - "timestamp": { - "type": "string" - }, - "walletOperations": { - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "defiOperation": { - "type": "string" - }, - "defiPositionId": { - "type": "string" - }, - "defiPositionRef": { - "type": "string" - }, - "fromAddress": { - "type": "string" - }, - "fromAddressLabel": { - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "quoteCurrency": { - "type": "string" - }, - "quoteMeta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "quoteSource": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "toAddress": { - "type": "string" - }, - "toAddressLabel": { - "type": "string" - }, - "tokenAddress": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "valueQuote": { - "type": "string" - }, - "walletAddress": { - "type": "string" - }, - "walletName": { - "type": "string" - }, - "walletTransactionId": { - "type": "string" - } - }, - "required": [ - "type", - "txHash", - "chainId", - "txIndex", - "walletTransactionId", - "fromAddress", - "toAddress", - "value", - "tokenAddress", - "isSpam", - "walletName", - "walletAddress" - ], - "type": "object" - }, - "type": "array" - }, - "walletSource": { - "additionalProperties": false, - "properties": { - "blockHeight": { - "type": "string" - }, - "rawTransactionId": { - "type": "string" - }, - "rawTransactionSource": { - "type": "string" - }, - "timestamp": { - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "wallet", - "walletType", - "rawTransactionId", - "rawTransactionSource", - "blockHeight", - "timestamp" - ], - "type": "object" - } - }, - "required": [ - "id", - "operationType", - "classification", - "timestamp", - "status", - "tags", - "fileAttachments", - "walletOperations" - ], - "type": "object" - }, - "maxItems": 100, - "type": "array" -}
- Changed
get_portfolio_issue_summary16 fields changed- removed
Output schema / properties / samples / properties / errors / items / properties / fileAttachmentsRemoved value: -{ - "items": {}, - "type": "array" -} - removed
Output schema / properties / samples / properties / errors / items / properties / intercompanyPairRemoved value: -{ - "additionalProperties": false, - "properties": { - "counterpartOperationType": { - "type": "string" - }, - "counterpartPortfolioName": { - "type": "string" - }, - "counterpartPortfolioSlug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - }, - "counterpartPortfolioTransactionId": { - "type": "string" - }, - "counterpartStatus": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - }, - "counterpartSubType": { - "type": "string" - }, - "lotLinkCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "pairId": { - "type": "string" - }, - "side": { - "enum": [ - "SEND", - "RECEIVE" - ], - "type": "string" - }, - "treatment": { - "type": "string" - } - }, - "required": [ - "pairId", - "side", - "counterpartPortfolioName", - "counterpartPortfolioSlug", - "counterpartPortfolioTransactionId", - "counterpartOperationType", - "counterpartStatus", - "lotLinkCount" - ], - "type": "object" -} - removed
Output schema / properties / samples / properties / errors / items / properties / journalEntryRemoved value: -{ - "additionalProperties": false, - "properties": { - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } - }, - "required": [ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" - ], - "type": "object" -} - removed
Output schema / properties / samples / properties / errors / items / properties / portfolioTransactionContextRemoved value: -{ - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" -} - removed
Output schema / properties / samples / properties / errors / items / properties / systemNotesRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / samples / properties / errors / items / properties / walletOperationsRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "defiOperation": { - "type": "string" - }, - "defiPositionId": { - "type": "string" - }, - "defiPositionRef": { - "type": "string" - }, - "fromAddress": { - "type": "string" - }, - "fromAddressLabel": { - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "quoteCurrency": { - "type": "string" - }, - "quoteMeta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "quoteSource": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "toAddress": { - "type": "string" - }, - "toAddressLabel": { - "type": "string" - }, - "tokenAddress": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "valueQuote": { - "type": "string" - }, - "walletAddress": { - "type": "string" - }, - "walletName": { - "type": "string" - }, - "walletTransactionId": { - "type": "string" - } - }, - "required": [ - "type", - "txHash", - "chainId", - "txIndex", - "walletTransactionId", - "fromAddress", - "toAddress", - "value", - "tokenAddress", - "isSpam", - "walletName", - "walletAddress" - ], - "type": "object" - }, - "type": "array" -} - removed
Output schema / properties / samples / properties / errors / items / properties / walletSourceRemoved value: -{ - "additionalProperties": false, - "properties": { - "blockHeight": { - "type": "string" - }, - "rawTransactionId": { - "type": "string" - }, - "rawTransactionSource": { - "type": "string" - }, - "timestamp": { - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "wallet", - "walletType", - "rawTransactionId", - "rawTransactionSource", - "blockHeight", - "timestamp" - ], - "type": "object" -} - changed
Output schema / properties / samples / properties / errors / items / requiredPrevious value: -[ - "id", - "operationType", - "classification", - "timestamp", - "status", - "tags", - "fileAttachments", - "walletOperations" -]New value: +[ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags" +] - removed
Output schema / properties / samples / properties / uncategorized / items / properties / fileAttachmentsRemoved value: -{ - "items": {}, - "type": "array" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / intercompanyPairRemoved value: -{ - "additionalProperties": false, - "properties": { - "counterpartOperationType": { - "type": "string" - }, - "counterpartPortfolioName": { - "type": "string" - }, - "counterpartPortfolioSlug": { - "minLength": 1, - "pattern": "^[a-z0-9-]+$", - "type": "string" - }, - "counterpartPortfolioTransactionId": { - "type": "string" - }, - "counterpartStatus": { - "enum": [ - "PROPOSED", - "ERROR", - "POSTED", - "CLOSED" - ], - "type": "string" - }, - "counterpartSubType": { - "type": "string" - }, - "lotLinkCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "pairId": { - "type": "string" - }, - "side": { - "enum": [ - "SEND", - "RECEIVE" - ], - "type": "string" - }, - "treatment": { - "type": "string" - } - }, - "required": [ - "pairId", - "side", - "counterpartPortfolioName", - "counterpartPortfolioSlug", - "counterpartPortfolioTransactionId", - "counterpartOperationType", - "counterpartStatus", - "lotLinkCount" - ], - "type": "object" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / journalEntryRemoved value: -{ - "additionalProperties": false, - "properties": { - "adjustmentJournalImportProvenance": { - "additionalProperties": false, - "properties": { - "importRef": { - "maxLength": 128, - "minLength": 1, - "pattern": "^adjustment-journal-import-[a-z0-9-]+$", - "type": "string" - }, - "sourceFile": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - }, - "uploadedAt": { - "format": "date-time", - "type": "string" - }, - "uploader": { - "additionalProperties": false, - "properties": { - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - } - }, - "required": [ - "name", - "uploadedAt", - "uploader" - ], - "type": "object" - }, - "sourceRows": { - "items": { - "additionalProperties": false, - "properties": { - "appliedResolutions": { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "minLength": 1, - "type": "string" - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "counterpartyExternalId", - "counterpartyName" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - "entryId": { - "minLength": 1, - "type": "string" - }, - "journalLineNumber": { - "exclusiveMinimum": 0, - "maximum": 9007199254740991, - "type": "integer" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "const": "csv", - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "const": "xlsx", - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "normalizedValues": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 1, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "schemaVersion": { - "const": 2, - "type": "number" - }, - "values": { - "additionalProperties": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "propertyNames": { - "anyOf": [ - { - "enum": [ - "accountNumber", - "amount", - "counterpartyExternalId", - "counterpartyName", - "direction", - "effectiveAt", - "effectiveDate", - "entryId", - "memo" - ], - "type": "string" - }, - { - "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - ] - }, - "type": "object" - } - }, - "required": [ - "schemaVersion", - "values" - ], - "type": "object" - } - ] - }, - "sourceRowHash": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "appliedResolutions", - "entryId", - "journalLineNumber", - "locator", - "normalizedValues", - "sourceRowHash" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "importRef", - "sourceFile", - "sourceRows" - ], - "type": "object" - }, - "id": { - "type": "string" - }, - "isAdjustment": { - "type": "boolean" - }, - "lines": { - "items": { - "additionalProperties": false, - "properties": { - "accountName": { - "type": "string" - }, - "accountNormalBalanceType": { - "type": "string" - }, - "accountNumber": { - "type": "string" - }, - "accountSubType": { - "type": "string" - }, - "accountType": { - "type": "string" - }, - "assetAmount": { - "type": "string" - }, - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "counterpartyName": { - "type": "string" - }, - "entryType": { - "type": "string" - }, - "fiatAmount": { - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "lot": { - "additionalProperties": false, - "properties": { - "entryId": { - "type": "string" - }, - "entryKind": { - "type": "string" - }, - "id": { - "type": "string" - }, - "lotMethod": { - "type": "string" - } - }, - "required": [ - "id", - "entryId", - "entryKind", - "lotMethod" - ], - "type": "object" - }, - "memo": { - "type": "string" - }, - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "percentageBps": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "responsibilityCenterCode": { - "type": "string" - }, - "responsibilityCenterId": { - "type": "string" - }, - "responsibilityCenterName": { - "type": "string" - }, - "responsibilityCenterType": { - "additionalProperties": false, - "properties": { - "key": { - "type": "string" - }, - "kind": { - "enum": [ - "COST", - "REVENUE", - "PROFIT", - "INVESTMENT" - ], - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "key", - "name", - "kind" - ], - "type": "object" - }, - "responsibilityCenterTypeId": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeId", - "responsibilityCenterId", - "value", - "responsibilityCenterType", - "responsibilityCenterName", - "percentageBps" - ], - "type": "object" - }, - "type": "array" - }, - "transfer": { - "additionalProperties": false, - "properties": { - "chainId": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - } - }, - "type": "object" - } - }, - "required": [ - "lineNumber", - "entryType", - "fiatAmount", - "responsibilityCenterAssignments" - ], - "type": "object" - }, - "type": "array" - }, - "memo": { - "type": "string" - }, - "operationType": { - "type": "string" - }, - "portfolioTransactionId": { - "type": "string" - }, - "status": { - "type": "string" - }, - "subType": { - "type": "string" - }, - "systemNotes": { - "type": "string" - }, - "timestamp": { - "type": "string" - } - }, - "required": [ - "id", - "timestamp", - "status", - "isAdjustment", - "lines" - ], - "type": "object" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / portfolioTransactionContextRemoved value: -{ - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / systemNotesRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / walletOperationsRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "assetId": { - "type": "string" - }, - "assetSymbol": { - "type": "string" - }, - "chainId": { - "type": "string" - }, - "defiOperation": { - "type": "string" - }, - "defiPositionId": { - "type": "string" - }, - "defiPositionRef": { - "type": "string" - }, - "fromAddress": { - "type": "string" - }, - "fromAddressLabel": { - "type": "string" - }, - "isSpam": { - "type": "boolean" - }, - "quoteCurrency": { - "type": "string" - }, - "quoteMeta": { - "additionalProperties": false, - "properties": { - "s": { - "enum": [ - "SYNC_SOURCE", - "FMV_ENGINE", - "DERIVED_REPRESENTED", - "DERIVED_SIBLING", - "POLICY", - "MANUAL" - ], - "type": "string" - }, - "ts": { - "exclusiveMinimum": 0, - "maximum": 8210266876799, - "type": "integer" - } - }, - "required": [ - "s" - ], - "type": "object" - }, - "quoteSource": { - "type": "string" - }, - "stablecoinPeggedFiatCurrency": { - "type": "string" - }, - "toAddress": { - "type": "string" - }, - "toAddressLabel": { - "type": "string" - }, - "tokenAddress": { - "type": "string" - }, - "txHash": { - "type": "string" - }, - "txIndex": { - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" - }, - "type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "valueQuote": { - "type": "string" - }, - "walletAddress": { - "type": "string" - }, - "walletName": { - "type": "string" - }, - "walletTransactionId": { - "type": "string" - } - }, - "required": [ - "type", - "txHash", - "chainId", - "txIndex", - "walletTransactionId", - "fromAddress", - "toAddress", - "value", - "tokenAddress", - "isSpam", - "walletName", - "walletAddress" - ], - "type": "object" - }, - "type": "array" -} - removed
Output schema / properties / samples / properties / uncategorized / items / properties / walletSourceRemoved value: -{ - "additionalProperties": false, - "properties": { - "blockHeight": { - "type": "string" - }, - "rawTransactionId": { - "type": "string" - }, - "rawTransactionSource": { - "type": "string" - }, - "timestamp": { - "type": "string" - }, - "wallet": { - "additionalProperties": false, - "properties": { - "address": { - "type": "string" - }, - "chainId": { - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "walletType": { - "enum": [ - "BLOCKCHAIN", - "EXCHANGE", - "BANK" - ], - "type": "string" - } - }, - "required": [ - "wallet", - "walletType", - "rawTransactionId", - "rawTransactionSource", - "blockHeight", - "timestamp" - ], - "type": "object" -} - changed
Output schema / properties / samples / properties / uncategorized / items / requiredPrevious value: -[ - "id", - "operationType", - "classification", - "timestamp", - "status", - "tags", - "fileAttachments", - "walletOperations" -]New value: +[ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags" +]
- Changed
get_request_status2 fields changed- changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "appProgress": { - "additionalProperties": false, - "properties": { - "completed": { - "type": "number" - }, - "total": { - "type": "number" - }, - "transactionsSynced": { - "type": "number" - } - }, - "required": [ - "completed", - "total", - "transactionsSynced" - ], - "type": "object" - }, - "completedAt": { - "format": "date-time", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "error": { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "code": { - "type": "string" - }, - "details": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "message": { - "type": "string" - }, - "requestId": { - "type": "string" - } - }, - "required": [ - "code", - "message", - "requestId" - ], - "type": "object" - } - }, - "required": [ - "error" - ], - "type": "object" - }, - "finishedOn": { - "type": "number" - }, - "kind": { - "const": "job", - "type": "string" - }, - "outcome": { - "additionalProperties": false, - "properties": { - "classificationState": { - "type": "string" - }, - "errorTypes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "hasError": { - "type": "boolean" - }, - "operationType": { - "type": "string" - }, - "suggestedAction": {}, - "transactionId": { - "type": "string" - }, - "type": { - "const": "portfolio_transaction", - "type": "string" - } - }, - "required": [ - "type", - "transactionId", - "hasError", - "errorTypes", - "suggestedAction" - ], - "type": "object" - }, - "progress": { - "type": "number" - }, - "requestId": { - "type": "string" - }, - "result": { - "additionalProperties": false, - "properties": { - "downloadUrl": { - "type": "string" - }, - "fileSize": { - "type": "number" - }, - "format": { - "enum": [ - "xlsx", - "pdf", - "json" - ], - "type": "string" - } - }, - "required": [ - "downloadUrl", - "fileSize", - "format" - ], - "type": "object" - }, - "returnValue": {}, - "status": { - "enum": [ - "pending", - "active", - "delayed", - "completed", - "failed" - ], - "type": "string" - }, - "subject": { - "additionalProperties": false, - "properties": { - "commandType": { - "type": "string" - }, - "kind": { - "const": "portfolio_transaction", - "type": "string" - }, - "transactionId": { - "type": "string" - } - }, - "required": [ - "kind", - "transactionId" - ], - "type": "object" - }, - "type": { - "enum": [ - "sync", - "export", - "recompute", - "reclassify" - ], - "type": "string" - }, - "updatedAt": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "requestId", - "type", - "status", - "progress", - "createdAt", - "updatedAt", - "kind" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "completedAt": { - "format": "date-time", - "type": "string" - }, - "createdAt": { - "format": "date-time", - "type": "string" - }, - "error": { - "additionalProperties": false, - "properties": { - "error": { - "additionalProperties": false, - "properties": { - "code": { - "type": "string" - }, - "details": { - "additionalProperties": {}, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "message": { - "type": "string" - }, - "requestId": { - "type": "string" - } - }, - "required": [ - "code", - "message", - "requestId" - ], - "type": "object" - } - }, - "required": [ - "error" - ], - "type": "object" - }, - "kind": { - "const": "report", - "type": "string" - }, - "progressPercent": { - "maximum": 100, - "minimum": 0, - "type": "number" - }, - "requestId": { - "type": "string" - }, - "result": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "type": { - "const": "totals", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "type": { - "const": "full", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "rows": {}, - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "totalsOnly": { - "type": "boolean" - }, - "type": { - "const": "json", - "type": "string" - } - }, - "required": [ - "type", - "rows", - "totals" - ], - "type": "object" - } - ] - }, - "status": { - "enum": [ - "pending", - "processing", - "completed", - "failed" - ], - "type": "string" - } - }, - "required": [ - "status", - "progressPercent", - "createdAt", - "kind", - "requestId" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "kind": { + "const": "job", + "type": "string" + }, + "outcome": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {}, + "transactionId": { + "type": "string" + }, + "type": { + "const": "portfolio_transaction", + "type": "string" + } + }, + "required": [ + "type", + "transactionId", + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "subject": { + "additionalProperties": false, + "properties": { + "commandType": { + "type": "string" + }, + "kind": { + "const": "portfolio_transaction", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "kind", + "transactionId" + ], + "type": "object" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt", + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "kind": { + "const": "report", + "type": "string" + }, + "progressPercent": { + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": {}, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + }, + "status": { + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "type": "string" + } + }, + "required": [ + "status", + "progressPercent", + "createdAt", + "kind", + "requestId" + ], + "type": "object" + } +] - changed
Output schema / properties / result / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "downloadUrl": { - "type": "string" - }, - "fileSize": { - "type": "number" - }, - "format": { - "enum": [ - "xlsx", - "pdf", - "json" - ], - "type": "string" - } - }, - "required": [ - "downloadUrl", - "fileSize", - "format" - ], - "type": "object" - }, - { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "type": { - "const": "totals", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "type": { - "const": "full", - "type": "string" - } - }, - "required": [ - "type", - "totals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "rows": {}, - "totals": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "capitalGains": { - "type": "string" - }, - "capitalLosses": { - "type": "string" - }, - "netIncome": { - "type": "string" - }, - "ordinaryExpense": { - "type": "string" - }, - "ordinaryIncome": { - "type": "string" - }, - "reportType": { - "const": "consolidated-profit-and-loss", - "type": "string" - }, - "totalExpensesAndLosses": { - "type": "string" - }, - "totalRevenue": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalRevenue", - "ordinaryIncome", - "capitalGains", - "totalExpensesAndLosses", - "ordinaryExpense", - "capitalLosses", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netWorth": { - "type": "string" - }, - "reportType": { - "const": "consolidated-balance-sheet", - "type": "string" - }, - "totalAssets": { - "type": "string" - }, - "totalEquity": { - "type": "string" - }, - "totalLiabilities": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalAssets", - "totalLiabilities", - "totalEquity", - "netWorth" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "netIncome": { - "type": "string" - }, - "reportType": { - "const": "income-expense", - "type": "string" - }, - "totalExpense": { - "type": "string" - }, - "totalIncome": { - "type": "string" - }, - "transactionCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalIncome", - "totalExpense", - "netIncome", - "transactionCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "percentGainOrLoss": { - "type": "string" - }, - "reportType": { - "const": "gains-losses", - "type": "string" - }, - "totalCostBasis": { - "type": "string" - }, - "totalGainOrLoss": { - "type": "string" - }, - "totalProceeds": { - "type": "string" - }, - "tradeCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "reportType", - "totalProceeds", - "totalCostBasis", - "totalGainOrLoss", - "percentGainOrLoss", - "tradeCount" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountCount": { - "maximum": 9007199254740991, - "minimum": 0, - "type": "integer" - }, - "difference": { - "type": "string" - }, - "isBalanced": { - "type": "boolean" - }, - "reportType": { - "const": "trial-balance", - "type": "string" - }, - "subTotals": { - "additionalProperties": { - "additionalProperties": false, - "properties": { - "credit": { - "type": "string" - }, - "debit": { - "type": "string" - } - }, - "required": [ - "debit", - "credit" - ], - "type": "object" - }, - "propertyNames": { - "type": "string" - }, - "type": "object" - }, - "totalCredits": { - "type": "string" - }, - "totalDebits": { - "type": "string" - } - }, - "required": [ - "reportType", - "totalDebits", - "totalCredits", - "difference", - "isBalanced", - "accountCount", - "subTotals" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "statement", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "transactions", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "journal-entries", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "cost-basis-ledger", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "payment-requests", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "reportType": { - "const": "portfolio-conversion-workbook-template", - "type": "string" - } - }, - "required": [ - "reportType" - ], - "type": "object" - } - ] - }, - "totalsOnly": { - "type": "boolean" - }, - "type": { - "const": "json", - "type": "string" - } - }, - "required": [ - "type", - "rows", - "totals" - ], - "type": "object" - } - ] - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "totals": {}, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": {}, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + } +]
6 tool updates
- Removed
get_portfolio_transaction - Removed
get_raw_transaction - Removed
get_wallet - Changed
list_portfolio_transactions38 fields changed- changed
Input schema / properties / address / descriptionPrevious value: -"Match transfers by from/to address (case-insensitive)"New value: +"Match transfer from/to address (case-insensitive)" - changed
Input schema / properties / assetRefs / descriptionPrevious value: -"Filter by asset symbol (any of, case-insensitive)"New value: +"Filter by asset symbol (case-insensitive)" - changed
Input schema / properties / counterparty / descriptionPrevious value: -"Filter by counterparty name (any of, case-insensitive)"New value: +"Filter by counterparty name (case-insensitive)" - changed
Input schema / properties / errorType / descriptionPrevious value: -"Filter by error/warning code array, e.g. [\"FmvNotAvailable\"]"New value: +"Filter by error/warning code, e.g. [\"FmvNotAvailable\"]" - changed
Input schema / properties / hasError / descriptionPrevious value: -"When true, only transactions with a processing error; when false, only error-free transactions"New value: +"true: has a processing error; false: error-free" - changed
Input schema / properties / hasJournalEntry / descriptionPrevious value: -"When true, only transactions with a non-empty journal entry; when false, only those without one"New value: +"true: has a non-empty journal entry; false: does not" - changed
Input schema / properties / hasLots / descriptionPrevious value: -"When true, only transactions that produced cost-basis lots; when false, only those without lots"New value: +"true: produced cost-basis lots; false: did not" - changed
Input schema / properties / include / descriptionPrevious value: -"Include grouped contributing raw source transactions without provider details"New value: +"Include grouped contributing raw source transactions; rawWithDetails adds sanitized provider details and requires transactionId" - changed
Input schema / properties / include / enumPrevious value: -[ - "raw" -]New value: +[ + "raw", + "rawWithDetails" +] - changed
Input schema / properties / isSpam / descriptionPrevious value: -"Filter to transactions whose transfers involve spam (true) or non-spam (false) tokens"New value: +"true: transfers involve spam tokens; false: non-spam only" - changed
Input schema / properties / operationType / descriptionPrevious value: -"Filter by accounting operation type array, e.g. [\"UNCATEGORIZED\"]"New value: +"Filter by operation type, e.g. [\"UNCATEGORIZED\"]" - changed
Input schema / properties / responsibilityCenterTypeKeys / descriptionPrevious value: -"Filter to transactions whose journal lines carry a responsibility-center assignment under any of these type keys (e.g. primary, goal; from list_journal_line_assignment_options, type: responsibility_center)"New value: +"Filter by journal-line responsibility-center type key (e.g. primary, goal; from list_journal_line_assignment_options)" - changed
Input schema / properties / search / descriptionPrevious value: -"Free-text search over memo, tx hash and transaction ID"New value: +"Free-text search over memo, tx hash, transaction ID" - changed
Input schema / properties / status / descriptionPrevious value: -"Filter by transaction status array, e.g. [\"POSTED\"]"New value: +"Filter by status, e.g. [\"POSTED\"]" - changed
Input schema / properties / subType / descriptionPrevious value: -"Filter by operation sub-type (any of, case-insensitive)"New value: +"Filter by operation sub-type (case-insensitive)" - added
Input schema / properties / transactionIdAdded value: +{ + "description": "Look up one transaction by handle instead of listing", + "minLength": 1, + "type": "string" +} - added
Output schema / $defsAdded value: +{ + "__schema0": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/$defs/__schema0" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/$defs/__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] + } +} - added
Output schema / anyOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/properties/data" + }, + "pagination": { + "$ref": "#/properties/pagination" + }, + "resultType": { + "const": "transactionList", + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "resultType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "classification": { + "$ref": "#/properties/classification" + }, + "errorDetails": { + "$ref": "#/properties/errorDetails" + }, + "errorMessage": { + "$ref": "#/properties/errorMessage" + }, + "fileAttachments": { + "$ref": "#/properties/fileAttachments" + }, + "id": { + "$ref": "#/properties/id" + }, + "intercompanyPair": { + "$ref": "#/properties/intercompanyPair" + }, + "journalEntry": { + "$ref": "#/properties/journalEntry" + }, + "memo": { + "$ref": "#/properties/memo" + }, + "operationType": { + "$ref": "#/properties/operationType" + }, + "portfolioTransactionContext": { + "$ref": "#/properties/portfolioTransactionContext" + }, + "rawTransactions": { + "$ref": "#/properties/rawTransactions" + }, + "resultType": { + "const": "transaction", + "type": "string" + }, + "status": { + "$ref": "#/properties/status" + }, + "subType": { + "$ref": "#/properties/subType" + }, + "systemNotes": { + "$ref": "#/properties/systemNotes" + }, + "tags": { + "$ref": "#/properties/tags" + }, + "timestamp": { + "$ref": "#/properties/timestamp" + }, + "walletOperations": { + "$ref": "#/properties/walletOperations" + }, + "walletSource": { + "$ref": "#/properties/walletSource" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations", + "resultType" + ], + "type": "object" + } +] - added
Output schema / properties / classificationAdded value: +{ + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" +} - added
Output schema / properties / errorDetailsAdded value: +{ + "items": {}, + "type": "array" +} - added
Output schema / properties / errorMessageAdded value: +{ + "type": "string" +} - added
Output schema / properties / fileAttachmentsAdded value: +{ + "items": {}, + "type": "array" +} - added
Output schema / properties / idAdded value: +{ + "type": "string" +} - added
Output schema / properties / intercompanyPairAdded value: +{ + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" +} - added
Output schema / properties / journalEntryAdded value: +{ + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" +} - added
Output schema / properties / memoAdded value: +{ + "type": "string" +} - added
Output schema / properties / operationTypeAdded value: +{ + "type": "string" +} - added
Output schema / properties / portfolioTransactionContextAdded value: +{ + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" +} - added
Output schema / properties / rawTransactionsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "pattern": "^\\d+$", + "type": "string" + }, + "details": { + "$ref": "#/$defs/__schema0" + }, + "hash": { + "type": "string" + }, + "id": { + "minLength": 1, + "type": "string" + }, + "memo": { + "type": "string" + }, + "processingState": { + "enum": [ + "PROCESSED", + "PARTIAL", + "UNPROCESSED" + ], + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "chainId", + "address", + "type" + ], + "type": "object" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "defi": { + "additionalProperties": false, + "properties": { + "operation": { + "anyOf": [ + { + "const": "PROTOCOL_DEPOSIT", + "type": "string" + }, + { + "const": "PROTOCOL_WITHDRAW", + "type": "string" + }, + { + "const": "VAULT_DEPOSIT", + "type": "string" + }, + { + "const": "VAULT_WITHDRAW", + "type": "string" + }, + { + "const": "SWAP", + "type": "string" + }, + { + "const": "PROVIDE_LIQUIDITY", + "type": "string" + }, + { + "const": "REMOVE_LIQUIDITY", + "type": "string" + }, + { + "const": "LEND", + "type": "string" + }, + { + "const": "WITHDRAW_LEND", + "type": "string" + }, + { + "const": "LEND_REDUCE", + "type": "string" + }, + { + "const": "BORROW", + "type": "string" + }, + { + "const": "REPAY", + "type": "string" + }, + { + "const": "LOAN_LIQUIDATION", + "type": "string" + }, + { + "const": "STAKE", + "type": "string" + }, + { + "const": "UNSTAKE", + "type": "string" + }, + { + "const": "CLAIM_REWARDS", + "type": "string" + } + ] + }, + "positionRef": { + "type": "string" + }, + "tokenRole": { + "anyOf": [ + { + "const": "UNDERLYING", + "type": "string" + }, + { + "const": "COLLATERAL", + "type": "string" + }, + { + "const": "RECEIPT_TOKEN", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "LIABILITY_TOKEN", + "type": "string" + }, + { + "const": "REWARD", + "type": "string" + }, + { + "const": "OTHER", + "type": "string" + } + ] + } + }, + "type": "object" + }, + "from": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "portfolioTransactionId": { + "type": "string" + }, + "quote": { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "meta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "source": { + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "type": "object" + }, + "to": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "token": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "decimals": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "isSpam": { + "type": "boolean" + }, + "representsTokenAddress": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "type": { + "anyOf": [ + { + "const": "ERC20", + "type": "string" + }, + { + "const": "NATIVE", + "type": "string" + }, + { + "const": "FIAT", + "type": "string" + }, + { + "const": "NFT", + "type": "string" + }, + { + "const": "REBASE_LST", + "type": "string" + }, + { + "const": "INTEREST_BEARING", + "type": "string" + }, + { + "const": "VALUE_ACCRUING", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "DEBT", + "type": "string" + }, + { + "const": "REFLECT", + "type": "string" + }, + { + "const": "VOTE_ESCROWED", + "type": "string" + } + ] + } + }, + "required": [ + "chainId", + "address", + "assetId", + "symbol", + "type", + "decimals", + "isSpam" + ], + "type": "object" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "type": { + "enum": [ + "IN", + "OUT", + "GAS", + "SELF" + ], + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "txIndex", + "type", + "from", + "to", + "token", + "value" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "id", + "wallet", + "hash", + "blockHeight", + "timestamp", + "processingState", + "walletOperations" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / resultTypeAdded value: +{ + "enum": [ + "transactionList", + "transaction" + ], + "type": "string" +} - added
Output schema / properties / statusAdded value: +{ + "type": "string" +} - added
Output schema / properties / subTypeAdded value: +{ + "type": "string" +} - added
Output schema / properties / systemNotesAdded value: +{ + "type": "string" +} - added
Output schema / properties / tagsAdded value: +{ + "items": { + "type": "string" + }, + "type": "array" +} - added
Output schema / properties / timestampAdded value: +{ + "type": "string" +} - added
Output schema / properties / walletOperationsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / walletSourceAdded value: +{ + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" +} - changed
Output schema / requiredPrevious value: -[ - "data", - "pagination" -]New value: +[ + "resultType" +]
- Changed
list_raw_transactions15 fields changed- added
Input schema / properties / includeDetailsAdded value: +{ + "default": false, + "description": "With rawTransactionId, also return blockchain event logs and decoded contract calls", + "type": "boolean" +} - added
Input schema / properties / rawTransactionIdAdded value: +{ + "description": "Look up one source transaction by handle instead of listing", + "minLength": 1, + "type": "string" +} - added
Output schema / $defsAdded value: +{ + "__schema0": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + }, + { + "type": "null" + }, + { + "items": { + "$ref": "#/$defs/__schema0" + }, + "type": "array" + }, + { + "additionalProperties": { + "$ref": "#/$defs/__schema0" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + } + ] + } +} - added
Output schema / anyOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/properties/data" + }, + "pagination": { + "$ref": "#/properties/pagination" + }, + "resultType": { + "const": "rawTransactionList", + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "resultType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "blockHeight": { + "$ref": "#/properties/blockHeight" + }, + "details": { + "$ref": "#/properties/details" + }, + "hash": { + "$ref": "#/properties/hash" + }, + "id": { + "$ref": "#/properties/id" + }, + "memo": { + "$ref": "#/properties/memo" + }, + "processingState": { + "$ref": "#/properties/processingState" + }, + "resultType": { + "const": "rawTransaction", + "type": "string" + }, + "timestamp": { + "$ref": "#/properties/timestamp" + }, + "wallet": { + "$ref": "#/properties/wallet" + }, + "walletOperations": { + "$ref": "#/properties/walletOperations" + } + }, + "required": [ + "id", + "wallet", + "hash", + "blockHeight", + "timestamp", + "processingState", + "walletOperations", + "resultType" + ], + "type": "object" + } +] - added
Output schema / properties / blockHeightAdded value: +{ + "pattern": "^\\d+$", + "type": "string" +} - added
Output schema / properties / detailsAdded value: +{ + "$ref": "#/$defs/__schema0" +} - added
Output schema / properties / hashAdded value: +{ + "type": "string" +} - added
Output schema / properties / idAdded value: +{ + "minLength": 1, + "type": "string" +} - added
Output schema / properties / memoAdded value: +{ + "type": "string" +} - added
Output schema / properties / processingStateAdded value: +{ + "enum": [ + "PROCESSED", + "PARTIAL", + "UNPROCESSED" + ], + "type": "string" +} - added
Output schema / properties / resultTypeAdded value: +{ + "enum": [ + "rawTransactionList", + "rawTransaction" + ], + "type": "string" +} - added
Output schema / properties / timestampAdded value: +{ + "format": "date-time", + "type": "string" +} - added
Output schema / properties / walletAdded value: +{ + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "chainId", + "address", + "type" + ], + "type": "object" +} - added
Output schema / properties / walletOperationsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "defi": { + "additionalProperties": false, + "properties": { + "operation": { + "anyOf": [ + { + "const": "PROTOCOL_DEPOSIT", + "type": "string" + }, + { + "const": "PROTOCOL_WITHDRAW", + "type": "string" + }, + { + "const": "VAULT_DEPOSIT", + "type": "string" + }, + { + "const": "VAULT_WITHDRAW", + "type": "string" + }, + { + "const": "SWAP", + "type": "string" + }, + { + "const": "PROVIDE_LIQUIDITY", + "type": "string" + }, + { + "const": "REMOVE_LIQUIDITY", + "type": "string" + }, + { + "const": "LEND", + "type": "string" + }, + { + "const": "WITHDRAW_LEND", + "type": "string" + }, + { + "const": "LEND_REDUCE", + "type": "string" + }, + { + "const": "BORROW", + "type": "string" + }, + { + "const": "REPAY", + "type": "string" + }, + { + "const": "LOAN_LIQUIDATION", + "type": "string" + }, + { + "const": "STAKE", + "type": "string" + }, + { + "const": "UNSTAKE", + "type": "string" + }, + { + "const": "CLAIM_REWARDS", + "type": "string" + } + ] + }, + "positionRef": { + "type": "string" + }, + "tokenRole": { + "anyOf": [ + { + "const": "UNDERLYING", + "type": "string" + }, + { + "const": "COLLATERAL", + "type": "string" + }, + { + "const": "RECEIPT_TOKEN", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "LIABILITY_TOKEN", + "type": "string" + }, + { + "const": "REWARD", + "type": "string" + }, + { + "const": "OTHER", + "type": "string" + } + ] + } + }, + "type": "object" + }, + "from": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "portfolioTransactionId": { + "type": "string" + }, + "quote": { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "meta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "source": { + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "type": "object" + }, + "to": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "label": { + "type": "string" + } + }, + "required": [ + "address" + ], + "type": "object" + }, + "token": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "decimals": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "isSpam": { + "type": "boolean" + }, + "representsTokenAddress": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "symbol": { + "type": "string" + }, + "type": { + "anyOf": [ + { + "const": "ERC20", + "type": "string" + }, + { + "const": "NATIVE", + "type": "string" + }, + { + "const": "FIAT", + "type": "string" + }, + { + "const": "NFT", + "type": "string" + }, + { + "const": "REBASE_LST", + "type": "string" + }, + { + "const": "INTEREST_BEARING", + "type": "string" + }, + { + "const": "VALUE_ACCRUING", + "type": "string" + }, + { + "const": "LP_SHARE", + "type": "string" + }, + { + "const": "DEBT", + "type": "string" + }, + { + "const": "REFLECT", + "type": "string" + }, + { + "const": "VOTE_ESCROWED", + "type": "string" + } + ] + } + }, + "required": [ + "chainId", + "address", + "assetId", + "symbol", + "type", + "decimals", + "isSpam" + ], + "type": "object" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "type": { + "enum": [ + "IN", + "OUT", + "GAS", + "SELF" + ], + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "txIndex", + "type", + "from", + "to", + "token", + "value" + ], + "type": "object" + }, + "type": "array" +} - changed
Output schema / requiredPrevious value: -[ - "data", - "pagination" -]New value: +[ + "resultType" +]
- Changed
list_wallets13 fields changed- changed
Input schema / properties / chainId / descriptionPrevious value: -"Optional chain ID filter"New value: +"Optional chain filter, or with walletAddress" - added
Input schema / properties / walletAddressAdded value: +{ + "description": "Look up one wallet; requires chainId", + "type": "string" +} - added
Output schema / anyOfAdded value: +[ + { + "additionalProperties": false, + "properties": { + "data": { + "$ref": "#/properties/data" + }, + "pagination": { + "$ref": "#/properties/pagination" + }, + "resultType": { + "const": "walletList", + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "resultType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/properties/address" + }, + "chainId": { + "$ref": "#/properties/chainId" + }, + "createdAt": { + "$ref": "#/properties/createdAt" + }, + "lastSyncAt": { + "$ref": "#/properties/lastSyncAt" + }, + "name": { + "$ref": "#/properties/name" + }, + "resultType": { + "const": "wallet", + "type": "string" + }, + "syncMessages": { + "$ref": "#/properties/syncMessages" + }, + "syncStatus": { + "$ref": "#/properties/syncStatus" + }, + "transactionCount": { + "$ref": "#/properties/transactionCount" + } + }, + "required": [ + "chainId", + "address", + "createdAt", + "syncMessages", + "syncStatus", + "transactionCount", + "resultType" + ], + "type": "object" + } +] - added
Output schema / properties / addressAdded value: +{ + "type": "string" +} - added
Output schema / properties / chainIdAdded value: +{ + "type": "string" +} - added
Output schema / properties / createdAtAdded value: +{ + "format": "date-time", + "type": "string" +} - added
Output schema / properties / lastSyncAtAdded value: +{ + "format": "date-time", + "type": "string" +} - added
Output schema / properties / nameAdded value: +{ + "type": "string" +} - added
Output schema / properties / resultTypeAdded value: +{ + "enum": [ + "walletList", + "wallet" + ], + "type": "string" +} - added
Output schema / properties / syncMessagesAdded value: +{ + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "code": { + "const": "EXCHANGE_RECONNECT_REQUIRED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "ExternalServiceAuthenticationError", + "type": "string" + }, + "provider": { + "minLength": 1, + "type": "string" + }, + "reconnectRequired": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "provider", + "reconnectRequired", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_PROCESSING_FAILED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncProcessingError", + "type": "string" + }, + "retryable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "retryable", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_WARNING", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncWarning", + "type": "string" + } + }, + "required": [ + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + } + ] + }, + "type": "array" +} - added
Output schema / properties / syncStatusAdded value: +{ + "enum": [ + "pending", + "syncing", + "synced", + "failed" + ], + "type": "string" +} - added
Output schema / properties / transactionCountAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - changed
Output schema / requiredPrevious value: -[ - "data", - "pagination" -]New value: +[ + "resultType" +]
49 tool updates
- Changed
add_wallet3 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "results": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainRef": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "status": { + "enum": [ + "created", + "skipped" + ], + "type": "string" + } + }, + "required": [ + "address", + "status" + ], + "type": "object" + }, + "type": "array" + }, + "syncQueued": { + "type": "boolean" + } + }, + "required": [ + "results", + "syncQueued" + ], + "type": "object" +}
- Changed
apply_accounting_rules1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + }, + "status": { + "const": "queued", + "type": "string" + } + }, + "required": [ + "status", + "requestId" + ], + "type": "object" +}
- Changed
confirm_transaction1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + }, + "status": { + "const": "queued", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "requestId", + "transactionId" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "status": { + "const": "completed", + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "success", + "transactionId" + ], + "type": "object" + } + ], + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "status": { + "enum": [ + "queued", + "completed" + ], + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "transactionId" + ], + "type": "object" +}
- Changed
create_portfolio2 fields changed- changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "accountingConfiguration": { + "additionalProperties": false, + "properties": { + "baseCurrency": { + "type": "string" + }, + "costBasisLotMethod": { + "enum": [ + "FIFO", + "LIFO", + "HIFO", + "ACB" + ], + "type": "string" + }, + "costBasisPerWallet": { + "type": "boolean" + }, + "defiDepositTreatment": { + "enum": [ + "TAXABLE_EXCHANGE", + "NON_TAXABLE_RESERVATION" + ], + "type": "string" + }, + "financialReportingFramework": { + "default": "TAX_ONLY", + "enum": [ + "TAX_ONLY", + "US_GAAP_PRE_2025", + "US_GAAP_ASC350_60", + "IFRS_IAS38", + "IFRS_IAS38_REVAL", + "IFRS_IAS2_LCNRV", + "IFRS_IAS2_BROKER_TRADER_FVLCTS", + "ASPE", + "FRS_102", + "AASB_138", + "OTHER" + ], + "type": "string" + }, + "gasFeeAccountingTreatment": { + "enum": [ + "DISPOSAL_AND_COST_BASIS", + "EXPENSE_ONLY" + ], + "type": "string" + }, + "isPurchaseTaxable": { + "type": "boolean" + }, + "jurisdictionCode": { + "type": "string" + }, + "separateIncomeExpenseLines": { + "type": "boolean" + }, + "stablecoinTreatment": { + "enum": [ + "BASE", + "ASSET" + ], + "type": "string" + } + }, + "required": [ + "gasFeeAccountingTreatment", + "isPurchaseTaxable", + "costBasisLotMethod", + "baseCurrency", + "jurisdictionCode", + "stablecoinTreatment", + "costBasisPerWallet", + "defiDepositTreatment", + "separateIncomeExpenseLines", + "financialReportingFramework" + ], + "type": "object" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "currency": { + "type": "string" + }, + "legalEntityType": { + "enum": [ + "BUSINESS", + "CORPORATION", + "INDIVIDUAL", + "TRUST", + "PARTNERSHIP" + ], + "type": "string" + }, + "name": { + "type": "string" + }, + "reportingTimezone": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "slug", + "name", + "createdAt", + "updatedAt", + "currency", + "accountingConfiguration", + "reportingTimezone" + ], + "type": "object" +}
- Removed
delete_accounting_rule - Changed
edit_accounting_rules10 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "enabled": { - "$ref": "#/properties/enabled" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "description": "Create a new rule.", - "enum": [ - "create" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "name", - "conditions", - "action" - ], - "type": "object" - }, - { - "additionalProperties": false, - "anyOf": [ - { - "properties": { - "name": { - "$ref": "#/properties/name" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - { - "properties": { - "conditions": { - "$ref": "#/properties/conditions" - } - }, - "required": [ - "conditions" - ], - "type": "object" - }, - { - "properties": { - "action": { - "$ref": "#/properties/action" - } - }, - "required": [ - "action" - ], - "type": "object" - } - ], - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "description": "Change the name, conditions, or actions of an existing rule.", - "enum": [ - "update" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "enabled": { - "$ref": "#/properties/enabled" - }, - "operation": { - "description": "Turn an existing rule on or off without changing it.", - "enum": [ - "set_enabled" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef", - "enabled" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "operation": { - "description": "Set the evaluation order of every rule in the portfolio.", - "enum": [ - "reorder" - ], - "type": "string" - }, - "orderedRuleRefs": { - "$ref": "#/properties/orderedRuleRefs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "orderedRuleRefs" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "enabled": { + "$ref": "#/properties/enabled" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Create a new rule, or preview creating one (preview: true).", + "enum": [ + "create" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "preview": { + "$ref": "#/properties/preview" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "name", + "conditions", + "action" + ], + "type": "object" + }, + { + "additionalProperties": false, + "anyOf": [ + { + "properties": { + "name": { + "$ref": "#/properties/name" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + { + "properties": { + "conditions": { + "$ref": "#/properties/conditions" + } + }, + "required": [ + "conditions" + ], + "type": "object" + }, + { + "properties": { + "action": { + "$ref": "#/properties/action" + } + }, + "required": [ + "action" + ], + "type": "object" + } + ], + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Change the name, conditions, or actions of an existing rule, or preview the change (preview: true).", + "enum": [ + "update" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "preview": { + "$ref": "#/properties/preview" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "enabled": { + "$ref": "#/properties/enabled" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Turn an existing rule on or off without changing it, or preview the change (preview: true).", + "enum": [ + "set_enabled" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "preview": { + "$ref": "#/properties/preview" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef", + "enabled" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Set the evaluation order of every rule in the portfolio, or preview it (preview: true).", + "enum": [ + "reorder" + ], + "type": "string" + }, + "orderedRuleRefs": { + "$ref": "#/properties/orderedRuleRefs" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "preview": { + "$ref": "#/properties/preview" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "orderedRuleRefs" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Remove one saved rule from active use, or preview removing it (preview: true).", + "enum": [ + "delete" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "preview": { + "$ref": "#/properties/preview" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Preview the saved rules as they stand, changing nothing.", + "enum": [ + "current" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation" + ], + "type": "object" + } +] - changed
Input schema / properties / action / properties / actions / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "counterpartyName": { - "description": "Counterparty name, from list_counterparties.", - "minLength": 1, - "type": "string" - }, - "target": { - "description": "What the change applies to: a journal line or the transaction.", - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "description": "Which change this action makes.", - "enum": [ - "SET_COUNTERPARTY" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "counterpartyName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "description": "Chart-of-accounts number, from list_ledger_accounts.", - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "target": { - "description": "What the change applies to: a journal line or the transaction.", - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "description": "Which change this action makes.", - "enum": [ - "SET_LEDGER_ACCOUNT" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "accountNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "responsibilityCenterName": { - "description": "Responsibility center name, from list_responsibility_centers.", - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeKey", - "responsibilityCenterName" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "target": { - "description": "What the change applies to: a journal line or the transaction.", - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "description": "Which change this action makes.", - "enum": [ - "SET_RESPONSIBILITY_CENTERS" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "responsibilityCenterAssignments" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "counterpartyName": { + "description": "Counterparty name, from list_journal_line_assignment_options (type: counterparty).", + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_COUNTERPARTY" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "counterpartyName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "description": "Chart-of-accounts number, from list_journal_line_assignment_options (type: ledger_account).", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_LEDGER_ACCOUNT" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "accountNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "responsibilityCenterName": { + "description": "Responsibility center name, from list_journal_line_assignment_options (type: responsibility_center).", + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeKey", + "responsibilityCenterName" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_RESPONSIBILITY_CENTERS" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "responsibilityCenterAssignments" + ], + "type": "object" + } +] - changed
Input schema / properties / conditions / properties / all / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "fromAddressLabel" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "toAddressLabel" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "fromAddress" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "toAddress" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "direction" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals", - "notEquals" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "enum": [ - "IN", - "OUT", - "GAS" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "asset" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "assetClass" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "enum": [ - "ERC20", - "FIAT", - "NATIVE", - "REBASE_LST", - "INTEREST_BEARING", - "VALUE_ACCRUING", - "LP_SHARE", - "DEBT", - "REFLECT", - "VOTE_ESCROWED", - "NFT" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "stablecoin" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "type": "boolean" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "chain" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "operationType" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "enum": [ - "DEPOSIT_FIAT", - "INCOME", - "REFUND", - "WITHDRAWAL_FIAT", - "EXPENSE", - "BUY", - "SELL", - "EXCHANGE", - "SWAP", - "MOVE", - "INTERCOMPANY_SEND", - "INTERCOMPANY_RECEIVE", - "STAKE", - "UNSTAKE", - "PROTOCOL_DEPOSIT", - "PROTOCOL_WITHDRAW", - "VAULT_DEPOSIT", - "VAULT_WITHDRAW", - "LP_IN", - "LP_OUT", - "LOAN_BORROW", - "LOAN_REPAY", - "LOAN_LIQUIDATION", - "LEND_GIVE", - "LEND_WITHDRAW", - "ADJUSTMENT", - "UNCATEGORIZED", - "SPAM" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "accountSubType" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "enum": [ - "EXT", - "BNK", - "INC", - "EXP", - "LINT", - "LLIQ", - "LQLOSS", - "CLOSS", - "CBNK", - "CBAS", - "CRE", - "CGL", - "CEXP", - "CINC", - "TRADING_REVENUE", - "COGS", - "INVENTORY_VALUATION_ADJUSTMENT", - "INVENTORY_COGS_ADJUSTMENT", - "INVENTORY_WRITE_DOWN", - "INVENTORY_REMEASUREMENT_GAIN", - "INVENTORY_REMEASUREMENT_LOSS", - "CNP", - "UINC", - "UEXP", - "OFEXP", - "OFINC", - "ICINV", - "CAP", - "UNREALISED_FV_GAIN", - "UNREALISED_FV_LOSS", - "CFVA" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Condition field.", - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "description": "Comparison operator.", - "enum": [ - "gt" - ], - "type": "string" - }, - "value": { - "description": "Decimal fiat amount to compare against.", - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Condition field.", - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "description": "Comparison operator.", - "enum": [ - "lt" - ], - "type": "string" - }, - "value": { - "description": "Decimal fiat amount to compare against.", - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Condition field.", - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "description": "Comparison operator.", - "enum": [ - "gte" - ], - "type": "string" - }, - "value": { - "description": "Decimal fiat amount to compare against.", - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Condition field.", - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "description": "Comparison operator.", - "enum": [ - "lte" - ], - "type": "string" - }, - "value": { - "description": "Decimal fiat amount to compare against.", - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Condition field.", - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "description": "Comparison operator.", - "enum": [ - "between" - ], - "type": "string" - }, - "value": { - "description": "Inclusive [low, high] decimal-string range.", - "items": { - "anyOf": [ - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - }, - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - ] - }, - "maxItems": 2, - "minItems": 2, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } - ] - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "entryType" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "accountType" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "wallet" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "additionalProperties": false, - "properties": { - "address": { - "description": "Wallet address", - "minLength": 1, - "type": "string" - }, - "chainId": { - "description": "Chain ID", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "accountNumber" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "description": "Chart-of-accounts number, from list_ledger_accounts.", - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "operator", - "field", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "description": "Which part of the transaction this condition tests.", - "enum": [ - "counterparty" - ], - "type": "string" - }, - "operator": { - "description": "How the field is compared with value.", - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "description": "The value the field is compared against.", - "items": { - "description": "Counterparty name, from list_counterparties.", - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "direction" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "notEquals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "IN", + "OUT", + "GAS" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "asset" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "assetClass" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ERC20", + "FIAT", + "NATIVE", + "REBASE_LST", + "INTEREST_BEARING", + "VALUE_ACCRUING", + "LP_SHARE", + "DEBT", + "REFLECT", + "VOTE_ESCROWED", + "NFT" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "stablecoin" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "type": "boolean" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "chain" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "operationType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountSubType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "EXT", + "BNK", + "INC", + "EXP", + "LINT", + "LLIQ", + "LQLOSS", + "CLOSS", + "CBNK", + "CBAS", + "CRE", + "CGL", + "CEXP", + "CINC", + "TRADING_REVENUE", + "COGS", + "INVENTORY_VALUATION_ADJUSTMENT", + "INVENTORY_COGS_ADJUSTMENT", + "INVENTORY_WRITE_DOWN", + "INVENTORY_REMEASUREMENT_GAIN", + "INVENTORY_REMEASUREMENT_LOSS", + "CNP", + "UINC", + "UEXP", + "OFEXP", + "OFINC", + "ICINV", + "CAP", + "UNREALISED_FV_GAIN", + "UNREALISED_FV_LOSS", + "CFVA" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "between" + ], + "type": "string" + }, + "value": { + "description": "Inclusive [low, high] decimal-string range.", + "items": { + "anyOf": [ + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + }, + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + ] + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } + ] + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "entryType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "wallet" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "additionalProperties": false, + "properties": { + "address": { + "description": "Wallet address", + "minLength": 1, + "type": "string" + }, + "chainId": { + "description": "Chain ID", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountNumber" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Chart-of-accounts number, from list_journal_line_assignment_options (type: ledger_account).", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "operator", + "field", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Counterparty name, from list_journal_line_assignment_options (type: counterparty).", + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } +] - added
Input schema / properties / maxAffectedAdded value: +{ + "default": 10, + "description": "Preview only: how many affected transactions to sample, at most 25. affectedCount in the result equals this sample size; check candidateCount for the true total match count.", + "maximum": 25, + "minimum": 1, + "type": "integer" +} - changed
Input schema / properties / operation / descriptionPrevious value: -"Create a new rule."New value: +"Create a new rule, or preview creating one (preview: true)." - changed
Input schema / properties / operation / enumPrevious value: -[ - "create", - "update", - "set_enabled", - "reorder" -]New value: +[ + "create", + "update", + "set_enabled", + "reorder", + "delete", + "current" +] - changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - added
Input schema / properties / previewAdded value: +{ + "description": "When true, evaluate the change and return its impact without saving it.", + "type": "boolean" +} - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "jobId": { + "type": "string" + }, + "mode": { + "enum": [ + "sync", + "async" + ], + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "data": {}, + "success": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "success" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "body": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "currentUsage": { + "type": "number" + }, + "limit": { + "type": "number" + }, + "usageType": { + "type": "string" + } + }, + "required": [ + "usageType", + "currentUsage", + "limit" + ], + "type": "object" + }, + {} + ] + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message", + "body" + ], + "type": "object" + }, + "success": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "success", + "error" + ], + "type": "object" + } + ] + }, + "status": { + "const": "queued", + "type": "string" + } + }, + "required": [ + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "const": "compact", + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "const": "transactions", + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "transactionViews": { + "items": { + "additionalProperties": false, + "properties": { + "classification": { + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "errorDetails": { + "items": {}, + "type": "array" + }, + "errorMessage": { + "type": "string" + }, + "fileAttachments": { + "items": {}, + "type": "array" + }, + "id": { + "type": "string" + }, + "intercompanyPair": { + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" + }, + "journalEntry": { + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionContext": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "timestamp": { + "type": "string" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" + }, + "walletSource": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes", + "transactionViews" + ], + "type": "object" + } + ], + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleId": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleId", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "enum": [ + "compact", + "transactions" + ], + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "transactionViews": { + "items": { + "additionalProperties": false, + "properties": { + "classification": { + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "errorDetails": { + "items": {}, + "type": "array" + }, + "errorMessage": { + "type": "string" + }, + "fileAttachments": { + "items": {}, + "type": "array" + }, + "id": { + "type": "string" + }, + "intercompanyPair": { + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" + }, + "journalEntry": { + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionContext": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "timestamp": { + "type": "string" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" + }, + "walletSource": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "required": [ + "detail", + "scannedCount", + "candidateCount", + "affectedCount", + "changes" + ], + "type": "object" + } + ], + "properties": { + "affectedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "candidateCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "changes": { + "items": { + "additionalProperties": false, + "properties": { + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "account": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "maxLength": 8, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "from", + "to" + ], + "type": "object" + }, + "counterparty": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "minLength": 1, + "type": "string" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "to": { + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "lineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "matchedButLost": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version", + "output" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "output": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "enum": [ + "account", + "counterparty" + ], + "type": "string" + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "responsibilityCenter", + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "kind", + "responsibilityCenterTypeKey" + ], + "type": "object" + } + ] + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version", + "output" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "responsibilityCenters": { + "items": { + "additionalProperties": false, + "properties": { + "byRule": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "saved", + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "version": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "kind", + "ruleRef", + "version" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "const": "draft", + "type": "string" + }, + "label": { + "const": "draft", + "type": "string" + }, + "version": { + "const": 1, + "type": "number" + } + }, + "required": [ + "kind", + "label", + "version" + ], + "type": "object" + } + ] + }, + "from": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "lockedBy": { + "enum": [ + "MANUAL", + "MANUAL_CLEARED", + "PAYMENT_LINK", + "SYSTEM_RULE" + ], + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "to": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + } + }, + "required": [ + "responsibilityCenterTypeKey" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "lineNumber", + "responsibilityCenters", + "matchedButLost" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "timestamp", + "lines" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "detail": { + "enum": [ + "compact", + "transactions" + ], + "type": "string" + }, + "firstAffectedAt": { + "format": "date-time", + "type": "string" + }, + "jobId": { + "type": "string" + }, + "lastAffectedAt": { + "format": "date-time", + "type": "string" + }, + "mode": { + "enum": [ + "sync", + "async" + ], + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "data": {}, + "success": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "success" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "body": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "currentUsage": { + "type": "number" + }, + "limit": { + "type": "number" + }, + "usageType": { + "type": "string" + } + }, + "required": [ + "usageType", + "currentUsage", + "limit" + ], + "type": "object" + }, + {} + ] + }, + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message", + "body" + ], + "type": "object" + }, + "success": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "success", + "error" + ], + "type": "object" + } + ] + }, + "scannedCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "status": { + "const": "queued", + "type": "string" + }, + "transactionViews": { + "items": { + "additionalProperties": false, + "properties": { + "classification": { + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "errorDetails": { + "items": {}, + "type": "array" + }, + "errorMessage": { + "type": "string" + }, + "fileAttachments": { + "items": {}, + "type": "array" + }, + "id": { + "type": "string" + }, + "intercompanyPair": { + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" + }, + "journalEntry": { + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionContext": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "timestamp": { + "type": "string" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" + }, + "walletSource": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations" + ], + "type": "object" + }, + "maxItems": 100, + "type": "array" + }, + "truncatedBy": { + "enum": [ + "affected", + "budget", + "details", + "scanned" + ], + "type": "string" + } + }, + "type": "object" +}
- Added
edit_transaction - Removed
find_portfolios - Removed
find_workspaces - Changed
full_resync1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "portfolioSlug": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "portfolioSlug", + "requestId" + ], + "type": "object" +}
- Changed
get_accounting_reference1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "costBasisLotEntryKinds": { + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + }, + "costBasisLotMethods": { + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + }, + "operationTypes": { + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + }, + "transactionStatuses": { + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "operationTypes", + "transactionStatuses", + "costBasisLotMethods", + "costBasisLotEntryKinds" + ], + "type": "object" +}
- Changed
get_asset_position1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "asset": { + "additionalProperties": false, + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "symbol": { + "type": "string" + } + }, + "required": [ + "id", + "symbol", + "name" + ], + "type": "object" + }, + "currency": { + "type": "string" + }, + "perWallet": { + "items": { + "additionalProperties": false, + "properties": { + "chainRef": { + "type": "string" + }, + "costBasis": { + "type": "string" + }, + "marketValue": { + "type": "string" + }, + "quantity": { + "type": "string" + }, + "unrealizedGainLoss": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + } + }, + "required": [ + "chainRef", + "quantity" + ], + "type": "object" + }, + "type": "array" + }, + "totals": { + "additionalProperties": false, + "properties": { + "costBasis": { + "type": "string" + }, + "marketValue": { + "type": "string" + }, + "quantity": { + "type": "string" + }, + "unrealizedGainLoss": { + "type": "string" + }, + "walletCount": { + "type": "number" + } + }, + "required": [ + "quantity", + "walletCount" + ], + "type": "object" + } + }, + "required": [ + "asset", + "currency", + "perWallet", + "totals" + ], + "type": "object" +}
- Changed
get_filter_options4 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-addresses" - ], - "type": "string" - }, - "mode": { - "description": "Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses.", - "enum": [ - "from", - "to" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName", - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-account-name" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-assets" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-counterparties" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-wallets" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-responsibility-centers" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-lot-presence" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-journal-entry-presence" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filter": { - "description": "Human-readable Portfolio Transactions filter expression.", - "maxLength": 4000, - "type": "string" - }, - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-status-counts" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-warnings" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "accounts" - ], - "type": "string" - }, - "portfolioRef": { - "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - }, - "workspaceRef": { - "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-addresses" + ], + "type": "string" + }, + "mode": { + "$ref": "#/properties/mode" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName", + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-account-name" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-assets" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-counterparties" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-wallets" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-responsibility-centers" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-lot-presence" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-journal-entry-presence" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filter": { + "$ref": "#/properties/filter" + }, + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-status-counts" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-warnings" + ], + "type": "string" + }, + "pageSize": { + "$ref": "#/properties/pageSize" + }, + "pageToken": { + "$ref": "#/properties/pageToken" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "search": { + "$ref": "#/properties/search" + }, + "selected": { + "$ref": "#/properties/selected" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "accounts" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + } +] - changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "data": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "identity": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "counterparty", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "addressBookItemType": { + "enum": [ + "CUSTOMER", + "VENDOR", + "EMPLOYEE", + "OTHER" + ], + "type": "string" + }, + "category": { + "const": "addressBook", + "type": "string" + } + }, + "required": [ + "category", + "address", + "addressBookItemType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "wallet", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "childAddresses": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "address", + "chainId" + ], + "type": "object" + }, + "type": "array" + }, + "walletName": { + "type": "string" + }, + "walletOwnerPortfolio": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "slug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + } + }, + "required": [ + "slug", + "name" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "category", + "address", + "walletName", + "walletType", + "childAddresses" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "raw", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + } + ] + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionAddress", + "type": "string" + }, + "transfersCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transfersCount", + "identity" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "accountType": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "assetId": { + "minLength": 1, + "type": "string" + }, + "currency": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAccountName", + "type": "string" + }, + "subType": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "accountNumber", + "name", + "accountType", + "subType", + "currency", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAsset", + "type": "string" + }, + "quoteCurrency": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "totalValue": { + "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "assetId", + "symbol", + "name", + "totalValue", + "quoteCurrency", + "isSpam", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "counterpartyId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "lineCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionCounterparty", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "name", + "counterpartyId", + "lineCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "displayName": { + "minLength": 1, + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "operationsCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "optionKind": { + "const": "portfolioTransactionWallet", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + }, + "valueQuote": { + "minLength": 1, + "type": "string" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "chainId", + "address", + "displayName", + "chainName", + "walletType", + "operationsCount", + "tokenCount", + "isBalanceMatch" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionResponsibilityCenter", + "type": "string" + }, + "responsibilityCenterCode": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterKind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "responsibilityCenterTypeName": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "responsibilityCenterName", + "responsibilityCenterTypeKey", + "responsibilityCenterTypeName", + "responsibilityCenterKind", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionLotPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withLots", + "withoutLots" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionJournalEntryPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withJournalEntries", + "withoutJournalEntries" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionStatusCount", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionWarning", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumbers": { + "items": { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "accountNumber", + "name" + ], + "type": "object" + }, + "type": "array" + }, + "accountTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "assets": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "currencies": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "hierarchy": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "parent", + "leaf" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "includeNoWallet": { + "additionalProperties": false, + "properties": { + "label": { + "const": "No wallet", + "type": "string" + }, + "value": { + "const": "noWallet", + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "normalBalanceTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "paymentLabelStates": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "withLabel", + "withoutLabel" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "revisionHash": { + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "active", + "archived" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "subTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "wallets": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "chainId", + "address", + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "accountNumbers", + "accountTypes", + "subTypes", + "normalBalanceTypes", + "wallets", + "includeNoWallet", + "assets", + "currencies", + "statuses", + "paymentLabelStates", + "hierarchy", + "cacheStatus", + "revisionHash" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "cacheStatus": { + "const": "hit", + "type": "string" + }, + "data": { + "items": {}, + "maxItems": 0, + "minItems": 0, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + "revisionHash": { + "type": "string" + } + }, + "required": [ + "data", + "pagination", + "cacheStatus", + "revisionHash" + ], + "type": "object" + } + ], + "properties": { + "accountNumbers": { + "items": { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "accountNumber", + "name" + ], + "type": "object" + }, + "type": "array" + }, + "accountTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "assets": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "cacheStatus": { + "enum": [ + "hit", + "miss", + "stale", + "bypass" + ], + "type": "string" + }, + "currencies": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "assetId", + "symbol" + ], + "type": "object" + }, + "type": "array" + }, + "data": { + "anyOf": [ + { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "identity": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "counterparty", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "addressBookItemType": { + "enum": [ + "CUSTOMER", + "VENDOR", + "EMPLOYEE", + "OTHER" + ], + "type": "string" + }, + "category": { + "const": "addressBook", + "type": "string" + } + }, + "required": [ + "category", + "address", + "addressBookItemType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "wallet", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "childAddresses": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "address", + "chainId" + ], + "type": "object" + }, + "type": "array" + }, + "walletName": { + "type": "string" + }, + "walletOwnerPortfolio": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "slug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + } + }, + "required": [ + "slug", + "name" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "category", + "address", + "walletName", + "walletType", + "childAddresses" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "category": { + "const": "raw", + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "category", + "address" + ], + "type": "object" + } + ] + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionAddress", + "type": "string" + }, + "transfersCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transfersCount", + "identity" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "minLength": 1, + "type": "string" + }, + "accountType": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "assetId": { + "minLength": 1, + "type": "string" + }, + "currency": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAccountName", + "type": "string" + }, + "subType": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "accountNumber", + "name", + "accountType", + "subType", + "currency", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "assetId": { + "minLength": 1, + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionAsset", + "type": "string" + }, + "quoteCurrency": { + "minLength": 1, + "type": "string" + }, + "symbol": { + "minLength": 1, + "type": "string" + }, + "totalValue": { + "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "assetId", + "symbol", + "name", + "totalValue", + "quoteCurrency", + "isSpam", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "counterpartyId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "lineCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "name": { + "minLength": 1, + "type": "string" + }, + "optionKind": { + "const": "portfolioTransactionCounterparty", + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "name", + "counterpartyId", + "lineCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "chainName": { + "minLength": 1, + "type": "string" + }, + "displayName": { + "minLength": 1, + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "operationsCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "optionKind": { + "const": "portfolioTransactionWallet", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + }, + "valueQuote": { + "minLength": 1, + "type": "string" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "chainId", + "address", + "displayName", + "chainName", + "walletType", + "operationsCount", + "tokenCount", + "isBalanceMatch" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionResponsibilityCenter", + "type": "string" + }, + "responsibilityCenterCode": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterKind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + }, + "responsibilityCenterTypeName": { + "minLength": 1, + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "responsibilityCenterName", + "responsibilityCenterTypeKey", + "responsibilityCenterTypeName", + "responsibilityCenterKind", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionLotPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withLots", + "withoutLots" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionJournalEntryPresence", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "withJournalEntries", + "withoutJournalEntries" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionStatusCount", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "metrics": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "count", + "type": "string" + }, + "unit": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "currency": { + "type": "string" + }, + "metricKind": { + "const": "money", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "currency" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "metricKind": { + "const": "percentage", + "type": "string" + }, + "unit": { + "const": "%", + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "metricKind", + "value", + "unit" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "optionKind": { + "const": "portfolioTransactionWarning", + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "optionKind", + "value", + "label", + "transactionCount", + "metrics" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + { + "items": {}, + "maxItems": 0, + "minItems": 0, + "type": "array" + } + ] + }, + "hierarchy": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "parent", + "leaf" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "includeNoWallet": { + "additionalProperties": false, + "properties": { + "label": { + "const": "No wallet", + "type": "string" + }, + "value": { + "const": "noWallet", + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "normalBalanceTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "pagination": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "pageSize": { + "type": "number" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + } + ] + }, + "paymentLabelStates": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "withLabel", + "withoutLabel" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "revisionHash": { + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "enum": [ + "active", + "archived" + ], + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "subTypes": { + "items": { + "additionalProperties": false, + "properties": { + "label": { + "minLength": 1, + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label" + ], + "type": "object" + }, + "type": "array" + }, + "wallets": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + }, + "label": { + "minLength": 1, + "type": "string" + }, + "name": { + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "value", + "label", + "chainId", + "address", + "name" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "cacheStatus", + "revisionHash" + ], + "type": "object" +}
- Added
get_help - Changed
get_journal_entry1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" +}
- Changed
get_lot_ledger1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "acquisitionTimestamp": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetIsSpam": { + "type": "boolean" + }, + "assetName": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "diff": { + "type": "string" + }, + "entryId": { + "type": "string" + }, + "entryKind": { + "enum": [ + "ADD", + "DSP", + "CUT", + "MVE", + "RES", + "REL" + ], + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + }, + "operationType": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "positionId": { + "type": "string" + }, + "price": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "txHash": { + "minLength": 1, + "type": "string" + }, + "value": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletChainId": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionTransfers": { + "items": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "chainId", + "txHash" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "id", + "entryId", + "timestamp", + "acquisitionTimestamp", + "entryKind", + "lotMethod", + "diff", + "value", + "assetId", + "assetIsSpam", + "portfolioTransactionId", + "walletTransactionTransfers" + ], + "type": "object" + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "page": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalPages": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "page", + "pageSize", + "totalCount", + "totalPages" + ], + "type": "object" + } + }, + "required": [ + "data", + "pagination" + ], + "type": "object" +}
- Changed
get_portfolio_balances1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "allBalancesMatch": { + "type": "boolean" + }, + "data": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "isBalanceMatch": { + "type": "boolean" + }, + "lastTransactionTimestamp": { + "format": "date-time", + "type": "string" + }, + "tokenCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "chainId", + "address", + "isBalanceMatch", + "tokenCount" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data", + "allBalancesMatch" + ], + "type": "object" +}
- Changed
get_portfolio_issue_summary1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "counts": { + "additionalProperties": false, + "properties": { + "spamInvolved": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "total": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "uncategorized": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "withErrors": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "total", + "uncategorized", + "withErrors", + "spamInvolved" + ], + "type": "object" + }, + "errorsByType": { + "items": { + "additionalProperties": false, + "properties": { + "count": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "errorType": { + "type": "string" + } + }, + "required": [ + "errorType", + "count" + ], + "type": "object" + }, + "type": "array" + }, + "isClean": { + "type": "boolean" + }, + "samples": { + "additionalProperties": false, + "properties": { + "errors": { + "items": { + "additionalProperties": false, + "properties": { + "classification": { + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "errorDetails": { + "items": {}, + "type": "array" + }, + "errorMessage": { + "type": "string" + }, + "fileAttachments": { + "items": {}, + "type": "array" + }, + "id": { + "type": "string" + }, + "intercompanyPair": { + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" + }, + "journalEntry": { + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionContext": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "timestamp": { + "type": "string" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" + }, + "walletSource": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations" + ], + "type": "object" + }, + "type": "array" + }, + "uncategorized": { + "items": { + "additionalProperties": false, + "properties": { + "classification": { + "additionalProperties": false, + "properties": { + "detail": { + "type": "string" + }, + "reason": { + "type": "string" + }, + "state": { + "enum": [ + "categorized", + "uncategorized", + "error" + ], + "type": "string" + }, + "suggestedAction": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "tool": { + "type": "string" + } + }, + "required": [ + "description" + ], + "type": "object" + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "errorDetails": { + "items": {}, + "type": "array" + }, + "errorMessage": { + "type": "string" + }, + "fileAttachments": { + "items": {}, + "type": "array" + }, + "id": { + "type": "string" + }, + "intercompanyPair": { + "additionalProperties": false, + "properties": { + "counterpartOperationType": { + "type": "string" + }, + "counterpartPortfolioName": { + "type": "string" + }, + "counterpartPortfolioSlug": { + "minLength": 1, + "pattern": "^[a-z0-9-]+$", + "type": "string" + }, + "counterpartPortfolioTransactionId": { + "type": "string" + }, + "counterpartStatus": { + "enum": [ + "PROPOSED", + "ERROR", + "POSTED", + "CLOSED" + ], + "type": "string" + }, + "counterpartSubType": { + "type": "string" + }, + "lotLinkCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "pairId": { + "type": "string" + }, + "side": { + "enum": [ + "SEND", + "RECEIVE" + ], + "type": "string" + }, + "treatment": { + "type": "string" + } + }, + "required": [ + "pairId", + "side", + "counterpartPortfolioName", + "counterpartPortfolioSlug", + "counterpartPortfolioTransactionId", + "counterpartOperationType", + "counterpartStatus", + "lotLinkCount" + ], + "type": "object" + }, + "journalEntry": { + "additionalProperties": false, + "properties": { + "adjustmentJournalImportProvenance": { + "additionalProperties": false, + "properties": { + "importRef": { + "maxLength": 128, + "minLength": 1, + "pattern": "^adjustment-journal-import-[a-z0-9-]+$", + "type": "string" + }, + "sourceFile": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + }, + "uploadedAt": { + "format": "date-time", + "type": "string" + }, + "uploader": { + "additionalProperties": false, + "properties": { + "name": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + } + }, + "required": [ + "name", + "uploadedAt", + "uploader" + ], + "type": "object" + }, + "sourceRows": { + "items": { + "additionalProperties": false, + "properties": { + "appliedResolutions": { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "minLength": 1, + "type": "string" + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "counterpartyExternalId", + "counterpartyName" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + "entryId": { + "minLength": 1, + "type": "string" + }, + "journalLineNumber": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "const": "csv", + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "const": "xlsx", + "type": "string" + }, + "rowNumber": { + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "normalizedValues": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 1, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "schemaVersion": { + "const": 2, + "type": "number" + }, + "values": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "propertyNames": { + "anyOf": [ + { + "enum": [ + "accountNumber", + "amount", + "counterpartyExternalId", + "counterpartyName", + "direction", + "effectiveAt", + "effectiveDate", + "entryId", + "memo" + ], + "type": "string" + }, + { + "pattern": "^responsibilityCenter:[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + ] + }, + "type": "object" + } + }, + "required": [ + "schemaVersion", + "values" + ], + "type": "object" + } + ] + }, + "sourceRowHash": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "appliedResolutions", + "entryId", + "journalLineNumber", + "locator", + "normalizedValues", + "sourceRowHash" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "importRef", + "sourceFile", + "sourceRows" + ], + "type": "object" + }, + "id": { + "type": "string" + }, + "isAdjustment": { + "type": "boolean" + }, + "lines": { + "items": { + "additionalProperties": false, + "properties": { + "accountName": { + "type": "string" + }, + "accountNormalBalanceType": { + "type": "string" + }, + "accountNumber": { + "type": "string" + }, + "accountSubType": { + "type": "string" + }, + "accountType": { + "type": "string" + }, + "assetAmount": { + "type": "string" + }, + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "counterpartyName": { + "type": "string" + }, + "entryType": { + "type": "string" + }, + "fiatAmount": { + "type": "string" + }, + "lineNumber": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "lot": { + "additionalProperties": false, + "properties": { + "entryId": { + "type": "string" + }, + "entryKind": { + "type": "string" + }, + "id": { + "type": "string" + }, + "lotMethod": { + "type": "string" + } + }, + "required": [ + "id", + "entryId", + "entryKind", + "lotMethod" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "percentageBps": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "responsibilityCenterCode": { + "type": "string" + }, + "responsibilityCenterId": { + "type": "string" + }, + "responsibilityCenterName": { + "type": "string" + }, + "responsibilityCenterType": { + "additionalProperties": false, + "properties": { + "key": { + "type": "string" + }, + "kind": { + "enum": [ + "COST", + "REVENUE", + "PROFIT", + "INVESTMENT" + ], + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "key", + "name", + "kind" + ], + "type": "object" + }, + "responsibilityCenterTypeId": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeId", + "responsibilityCenterId", + "value", + "responsibilityCenterType", + "responsibilityCenterName", + "percentageBps" + ], + "type": "object" + }, + "type": "array" + }, + "transfer": { + "additionalProperties": false, + "properties": { + "chainId": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "type": "object" + } + }, + "required": [ + "lineNumber", + "entryType", + "fiatAmount", + "responsibilityCenterAssignments" + ], + "type": "object" + }, + "type": "array" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionId": { + "type": "string" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "type": "string" + } + }, + "required": [ + "id", + "timestamp", + "status", + "isAdjustment", + "lines" + ], + "type": "object" + }, + "memo": { + "type": "string" + }, + "operationType": { + "type": "string" + }, + "portfolioTransactionContext": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "status": { + "type": "string" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "tags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "timestamp": { + "type": "string" + }, + "walletOperations": { + "items": { + "additionalProperties": false, + "properties": { + "assetId": { + "type": "string" + }, + "assetSymbol": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "defiOperation": { + "type": "string" + }, + "defiPositionId": { + "type": "string" + }, + "defiPositionRef": { + "type": "string" + }, + "fromAddress": { + "type": "string" + }, + "fromAddressLabel": { + "type": "string" + }, + "isSpam": { + "type": "boolean" + }, + "quoteCurrency": { + "type": "string" + }, + "quoteMeta": { + "additionalProperties": false, + "properties": { + "s": { + "enum": [ + "SYNC_SOURCE", + "FMV_ENGINE", + "DERIVED_REPRESENTED", + "DERIVED_SIBLING", + "POLICY", + "MANUAL" + ], + "type": "string" + }, + "ts": { + "exclusiveMinimum": 0, + "maximum": 8210266876799, + "type": "integer" + } + }, + "required": [ + "s" + ], + "type": "object" + }, + "quoteSource": { + "type": "string" + }, + "stablecoinPeggedFiatCurrency": { + "type": "string" + }, + "toAddress": { + "type": "string" + }, + "toAddressLabel": { + "type": "string" + }, + "tokenAddress": { + "type": "string" + }, + "txHash": { + "type": "string" + }, + "txIndex": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "valueQuote": { + "type": "string" + }, + "walletAddress": { + "type": "string" + }, + "walletName": { + "type": "string" + }, + "walletTransactionId": { + "type": "string" + } + }, + "required": [ + "type", + "txHash", + "chainId", + "txIndex", + "walletTransactionId", + "fromAddress", + "toAddress", + "value", + "tokenAddress", + "isSpam", + "walletName", + "walletAddress" + ], + "type": "object" + }, + "type": "array" + }, + "walletSource": { + "additionalProperties": false, + "properties": { + "blockHeight": { + "type": "string" + }, + "rawTransactionId": { + "type": "string" + }, + "rawTransactionSource": { + "type": "string" + }, + "timestamp": { + "type": "string" + }, + "wallet": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "walletType": { + "enum": [ + "BLOCKCHAIN", + "EXCHANGE", + "BANK" + ], + "type": "string" + } + }, + "required": [ + "wallet", + "walletType", + "rawTransactionId", + "rawTransactionSource", + "blockHeight", + "timestamp" + ], + "type": "object" + } + }, + "required": [ + "id", + "operationType", + "classification", + "timestamp", + "status", + "tags", + "fileAttachments", + "walletOperations" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "uncategorized", + "errors" + ], + "type": "object" + } + }, + "required": [ + "isClean", + "counts", + "errorsByType", + "samples" + ], + "type": "object" +}
- Changed
get_portfolio_transaction2 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Changed
get_raw_transaction2 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Removed
get_report_request_status - Changed
get_request_status1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "kind": { + "const": "job", + "type": "string" + }, + "outcome": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {}, + "transactionId": { + "type": "string" + }, + "type": { + "const": "portfolio_transaction", + "type": "string" + } + }, + "required": [ + "type", + "transactionId", + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "subject": { + "additionalProperties": false, + "properties": { + "commandType": { + "type": "string" + }, + "kind": { + "const": "portfolio_transaction", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "kind", + "transactionId" + ], + "type": "object" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt", + "kind" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "kind": { + "const": "report", + "type": "string" + }, + "progressPercent": { + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + }, + "status": { + "enum": [ + "pending", + "processing", + "completed", + "failed" + ], + "type": "string" + } + }, + "required": [ + "status", + "progressPercent", + "createdAt", + "kind", + "requestId" + ], + "type": "object" + } + ], + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "format": "date-time", + "type": "string" + } + ] + }, + "createdAt": { + "anyOf": [ + { + "format": "date-time", + "type": "string" + }, + { + "format": "date-time", + "type": "string" + } + ] + }, + "error": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + } + ] + }, + "finishedOn": { + "type": "number" + }, + "kind": { + "enum": [ + "job", + "report" + ], + "type": "string" + }, + "outcome": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {}, + "transactionId": { + "type": "string" + }, + "type": { + "const": "portfolio_transaction", + "type": "string" + } + }, + "required": [ + "type", + "transactionId", + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "progress": { + "type": "number" + }, + "progressPercent": { + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "requestId": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "string" + } + ] + }, + "result": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "type": { + "const": "totals", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "type": { + "const": "full", + "type": "string" + } + }, + "required": [ + "type", + "totals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "rows": {}, + "totals": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capitalGains": { + "type": "string" + }, + "capitalLosses": { + "type": "string" + }, + "netIncome": { + "type": "string" + }, + "ordinaryExpense": { + "type": "string" + }, + "ordinaryIncome": { + "type": "string" + }, + "reportType": { + "const": "consolidated-profit-and-loss", + "type": "string" + }, + "totalExpensesAndLosses": { + "type": "string" + }, + "totalRevenue": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalRevenue", + "ordinaryIncome", + "capitalGains", + "totalExpensesAndLosses", + "ordinaryExpense", + "capitalLosses", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netWorth": { + "type": "string" + }, + "reportType": { + "const": "consolidated-balance-sheet", + "type": "string" + }, + "totalAssets": { + "type": "string" + }, + "totalEquity": { + "type": "string" + }, + "totalLiabilities": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalAssets", + "totalLiabilities", + "totalEquity", + "netWorth" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "netIncome": { + "type": "string" + }, + "reportType": { + "const": "income-expense", + "type": "string" + }, + "totalExpense": { + "type": "string" + }, + "totalIncome": { + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalIncome", + "totalExpense", + "netIncome", + "transactionCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "percentGainOrLoss": { + "type": "string" + }, + "reportType": { + "const": "gains-losses", + "type": "string" + }, + "totalCostBasis": { + "type": "string" + }, + "totalGainOrLoss": { + "type": "string" + }, + "totalProceeds": { + "type": "string" + }, + "tradeCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "reportType", + "totalProceeds", + "totalCostBasis", + "totalGainOrLoss", + "percentGainOrLoss", + "tradeCount" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountCount": { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + "difference": { + "type": "string" + }, + "isBalanced": { + "type": "boolean" + }, + "reportType": { + "const": "trial-balance", + "type": "string" + }, + "subTotals": { + "additionalProperties": { + "additionalProperties": false, + "properties": { + "credit": { + "type": "string" + }, + "debit": { + "type": "string" + } + }, + "required": [ + "debit", + "credit" + ], + "type": "object" + }, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "totalCredits": { + "type": "string" + }, + "totalDebits": { + "type": "string" + } + }, + "required": [ + "reportType", + "totalDebits", + "totalCredits", + "difference", + "isBalanced", + "accountCount", + "subTotals" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "statement", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "transactions", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "journal-entries", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "cost-basis-ledger", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "payment-requests", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "reportType": { + "const": "portfolio-conversion-workbook-template", + "type": "string" + } + }, + "required": [ + "reportType" + ], + "type": "object" + } + ] + }, + "totalsOnly": { + "type": "boolean" + }, + "type": { + "const": "json", + "type": "string" + } + }, + "required": [ + "type", + "rows", + "totals" + ], + "type": "object" + } + ] + } + ] + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed", + "processing" + ], + "type": "string" + }, + "subject": { + "additionalProperties": false, + "properties": { + "commandType": { + "type": "string" + }, + "kind": { + "const": "portfolio_transaction", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "kind", + "transactionId" + ], + "type": "object" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "status", + "createdAt", + "kind" + ], + "type": "object" +}
- Changed
get_server_info1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "authentication": { + "items": { + "type": "string" + }, + "type": "array" + }, + "coverage": { + "additionalProperties": false, + "properties": { + "accountingFrameworks": { + "type": "string" + }, + "blockchains": { + "type": "string" + }, + "fiat": { + "type": "string" + } + }, + "required": [ + "blockchains", + "fiat", + "accountingFrameworks" + ], + "type": "object" + }, + "documentationUrl": { + "type": "string" + }, + "endpoint": { + "type": "string" + }, + "gettingStarted": { + "additionalProperties": false, + "properties": { + "accessRequirement": { + "type": "string" + }, + "signUpUrl": { + "type": "string" + }, + "steps": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "accessRequirement", + "signUpUrl", + "steps" + ], + "type": "object" + }, + "limitations": { + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "type": "string" + }, + "notes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "pricing": { + "additionalProperties": false, + "properties": { + "note": { + "type": "string" + }, + "plans": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "capacity": { + "const": "negotiated", + "type": "string" + }, + "name": { + "type": "string" + }, + "unlocks": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name", + "capacity", + "unlocks" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "capacity": { + "const": "published", + "type": "string" + }, + "limits": { + "additionalProperties": false, + "properties": { + "portfolios": { + "type": "number" + }, + "transactions": { + "type": "number" + }, + "wallets": { + "type": "number" + } + }, + "required": [ + "portfolios", + "wallets", + "transactions" + ], + "type": "object" + }, + "name": { + "type": "string" + }, + "unlocks": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "name", + "capacity", + "limits", + "unlocks" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url", + "note", + "plans" + ], + "type": "object" + }, + "summary": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "name", + "title", + "summary", + "endpoint", + "documentationUrl", + "authentication", + "notes", + "gettingStarted", + "coverage", + "pricing", + "limitations" + ], + "type": "object" +}
- Changed
import_adjustment_journals3 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / resolutions / items / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "description": "Ledger account to use for that row, from list_ledger_accounts.", - "minLength": 1, - "type": "string" - }, - "kind": { - "description": "Kind of reference this row fixes.", - "enum": [ - "account" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "description": "1-based line number in the CSV file.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "description": "1-based row number within the sheet.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "description": "Worksheet the row belongs to.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - } - }, - "required": [ - "accountNumber", - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "externalId": { - "description": "Counterparty's external identifier, as recorded on the counterparty.", - "minLength": 1, - "type": "string" - }, - "kind": { - "description": "Kind of reference this row fixes.", - "enum": [ - "counterparty" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "description": "1-based line number in the CSV file.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "description": "1-based row number within the sheet.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "description": "Worksheet the row belongs to.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - } - }, - "required": [ - "externalId", - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "description": "Kind of reference this row fixes.", - "enum": [ - "counterparty" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "description": "1-based line number in the CSV file.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "description": "1-based row number within the sheet.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "description": "Worksheet the row belongs to.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "name": { - "description": "Counterparty name to use for that row, from list_counterparties.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "locator", - "name" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "centerName": { - "description": "Responsibility center to use for that row, from list_responsibility_centers.", - "minLength": 1, - "type": "string" - }, - "kind": { - "description": "Kind of reference this row fixes.", - "enum": [ - "responsibilityCenter" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "description": "1-based line number in the CSV file.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "description": "Source file format.", - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "description": "1-based row number within the sheet.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "description": "Worksheet the row belongs to.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "typeKey": { - "description": "Responsibility center type the name belongs to, such as costCenter.", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "centerName", - "kind", - "locator", - "typeKey" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "description": "Ledger account to use for that row, from list_journal_line_assignment_options (type: ledger_account).", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "account" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + } + }, + "required": [ + "accountNumber", + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "externalId": { + "description": "Counterparty's external identifier, as recorded on the counterparty.", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + } + }, + "required": [ + "externalId", + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "name": { + "description": "Counterparty name to use for that row, from list_journal_line_assignment_options (type: counterparty).", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "name" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "centerName": { + "description": "Responsibility center to use for that row, from list_journal_line_assignment_options (type: responsibility_center).", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "responsibilityCenter" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "typeKey": { + "description": "Responsibility center type the name belongs to, such as costCenter.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "centerName", + "kind", + "locator", + "typeKey" + ], + "type": "object" + } +] - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Changed
incremental_sync1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "portfolioSlug": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "portfolioSlug", + "requestId" + ], + "type": "object" +}
- Changed
list_accounting_rules5 fields changed- changed
Input schema / properties / accountNumbers / items / descriptionPrevious value: -"Chart-of-accounts number, from list_ledger_accounts."New value: +"Chart-of-accounts number, from list_journal_line_assignment_options (type: ledger_account)." - changed
Input schema / properties / counterpartyNames / items / descriptionPrevious value: -"Counterparty name, from list_counterparties."New value: +"Counterparty name, from list_journal_line_assignment_options (type: counterparty)." - changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "action": { + "additionalProperties": false, + "properties": { + "actions": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "counterpartyName": { + "minLength": 1, + "type": "string" + }, + "target": { + "const": "LINE", + "type": "string" + }, + "type": { + "const": "SET_COUNTERPARTY", + "type": "string" + } + }, + "required": [ + "type", + "target" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "target": { + "const": "LINE", + "type": "string" + }, + "type": { + "const": "SET_LEDGER_ACCOUNT", + "type": "string" + } + }, + "required": [ + "type", + "target" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "responsibilityCenterName": { + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "target": { + "const": "LINE", + "type": "string" + }, + "type": { + "const": "SET_RESPONSIBILITY_CENTERS", + "type": "string" + } + }, + "required": [ + "type", + "target", + "responsibilityCenterAssignments" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "formatVersion": { + "const": 1, + "type": "number" + } + }, + "required": [ + "formatVersion", + "actions" + ], + "type": "object" + }, + "conditions": { + "additionalProperties": false, + "properties": { + "all": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fromAddressLabel", + "type": "string" + }, + "operator": { + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "toAddressLabel", + "type": "string" + }, + "operator": { + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fromAddress", + "type": "string" + }, + "operator": { + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "toAddress", + "type": "string" + }, + "operator": { + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "direction", + "type": "string" + }, + "operator": { + "enum": [ + "equals", + "notEquals" + ], + "type": "string" + }, + "value": { + "enum": [ + "IN", + "OUT", + "GAS" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "asset", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "assetClass", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "enum": [ + "ERC20", + "FIAT", + "NATIVE", + "REBASE_LST", + "INTEREST_BEARING", + "VALUE_ACCRUING", + "LP_SHARE", + "DEBT", + "REFLECT", + "VOTE_ESCROWED", + "NFT" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "stablecoin", + "type": "string" + }, + "operator": { + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "type": "boolean" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "chain", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "operationType", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "accountSubType", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "enum": [ + "EXT", + "BNK", + "INC", + "EXP", + "LINT", + "LLIQ", + "LQLOSS", + "CLOSS", + "CBNK", + "CBAS", + "CRE", + "CGL", + "CEXP", + "CINC", + "TRADING_REVENUE", + "COGS", + "INVENTORY_VALUATION_ADJUSTMENT", + "INVENTORY_COGS_ADJUSTMENT", + "INVENTORY_WRITE_DOWN", + "INVENTORY_REMEASUREMENT_GAIN", + "INVENTORY_REMEASUREMENT_LOSS", + "CNP", + "UINC", + "UEXP", + "OFEXP", + "OFINC", + "ICINV", + "CAP", + "UNREALISED_FV_GAIN", + "UNREALISED_FV_LOSS", + "CFVA" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fiatValue", + "type": "string" + }, + "operator": { + "const": "gt", + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fiatValue", + "type": "string" + }, + "operator": { + "const": "lt", + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fiatValue", + "type": "string" + }, + "operator": { + "const": "gte", + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fiatValue", + "type": "string" + }, + "operator": { + "const": "lte", + "type": "string" + }, + "value": { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "fiatValue", + "type": "string" + }, + "operator": { + "const": "between", + "type": "string" + }, + "value": { + "maxItems": 2, + "minItems": 2, + "prefixItems": [ + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + }, + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + ], + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } + ] + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "entryType", + "type": "string" + }, + "operator": { + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "accountType", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "wallet", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "minLength": 1, + "type": "string" + }, + "chainId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "accountNumber", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "operator", + "field", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "const": "counterparty", + "type": "string" + }, + "operator": { + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "items": { + "minLength": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } + ] + }, + "minItems": 1, + "type": "array" + }, + "formatVersion": { + "const": 1, + "type": "number" + } + }, + "required": [ + "formatVersion", + "all" + ], + "type": "object" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "enabled": { + "type": "boolean" + }, + "hasInvalidDefinition": { + "type": "boolean" + }, + "hasUnresolvedReferences": { + "type": "boolean" + }, + "name": { + "type": "string" + }, + "ruleRef": { + "minLength": 1, + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + }, + "version": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "name", + "enabled", + "version", + "hasInvalidDefinition", + "hasUnresolvedReferences", + "createdAt", + "updatedAt", + "ruleRef" + ], + "type": "object" + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "nextPageToken": { + "minLength": 1, + "type": "string" + }, + "pageSize": { + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" + } + }, + "required": [ + "pageSize" + ], + "type": "object" + } + }, + "required": [ + "data", + "pagination" + ], + "type": "object" +}
- Changed
list_chains1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "chainRef": { + "type": "string" + }, + "description": { + "type": "string" + }, + "evmChainId": { + "type": "string" + }, + "isEvm": { + "type": "boolean" + }, + "logoUrl": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "chainRef", + "name", + "isEvm" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Removed
list_counterparties - Added
list_journal_line_assignment_options - Removed
list_ledger_accounts - Changed
list_portfolio_transactions3 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / responsibilityCenterTypeKeys / descriptionPrevious value: -"Filter to transactions whose journal lines carry a responsibility-center assignment under any of these type keys (e.g. primary, goal; from list_responsibility_centers)"New value: +"Filter to transactions whose journal lines carry a responsibility-center assignment under any of these type keys (e.g. primary, goal; from list_journal_line_assignment_options, type: responsibility_center)" - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Changed
list_portfolios2 fields changed- added
Input schema / properties / queryAdded value: +{ + "description": "Optional portfolio name or slug search query", + "type": "string" +} - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "createdAt": { + "format": "date-time", + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "slug", + "name", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "page": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalPages": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "page", + "pageSize", + "totalCount", + "totalPages" + ], + "type": "object" + } + }, + "required": [ + "data", + "pagination" + ], + "type": "object" +}
- Changed
list_raw_transactions2 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Removed
list_responsibility_centers - Changed
list_wallets1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "type": "string" + }, + "chainId": { + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "lastSyncAt": { + "format": "date-time", + "type": "string" + }, + "name": { + "type": "string" + }, + "syncMessages": { + "items": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "code": { + "const": "EXCHANGE_RECONNECT_REQUIRED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "ExternalServiceAuthenticationError", + "type": "string" + }, + "provider": { + "minLength": 1, + "type": "string" + }, + "reconnectRequired": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "provider", + "reconnectRequired", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_PROCESSING_FAILED", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncProcessingError", + "type": "string" + }, + "retryable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "retryable", + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "code": { + "const": "SYNC_WARNING", + "type": "string" + }, + "details": { + "additionalProperties": false, + "properties": { + "errorType": { + "const": "SyncWarning", + "type": "string" + } + }, + "required": [ + "errorType" + ], + "type": "object" + }, + "message": { + "minLength": 1, + "type": "string" + }, + "severity": { + "default": "ERROR", + "enum": [ + "ERROR", + "WARN" + ], + "type": "string" + } + }, + "required": [ + "code", + "message", + "severity", + "details" + ], + "type": "object" + } + ] + }, + "type": "array" + }, + "syncStatus": { + "enum": [ + "pending", + "syncing", + "synced", + "failed" + ], + "type": "string" + }, + "transactionCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "chainId", + "address", + "createdAt", + "syncMessages", + "syncStatus", + "transactionCount" + ], + "type": "object" + }, + "type": "array" + }, + "pagination": { + "additionalProperties": false, + "properties": { + "page": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "pageSize": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalCount": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "totalPages": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + } + }, + "required": [ + "page", + "pageSize", + "totalCount", + "totalPages" + ], + "type": "object" + } + }, + "required": [ + "data", + "pagination" + ], + "type": "object" +}
- Changed
list_workspaces1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "planName": { + "type": "string" + }, + "role": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "usage": { + "additionalProperties": false, + "properties": { + "portfolios": { + "type": "number" + }, + "transactions": { + "type": "number" + }, + "users": { + "type": "number" + }, + "wallets": { + "type": "number" + } + }, + "required": [ + "portfolios", + "transactions", + "users", + "wallets" + ], + "type": "object" + } + }, + "required": [ + "name", + "planName", + "role", + "slug", + "usage" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Changed
mark_token_spam1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + }, + "status": { + "const": "queued", + "type": "string" + } + }, + "required": [ + "status", + "requestId" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "status": { + "const": "completed", + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "status", + "success" + ], + "type": "object" + } + ], + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "status": { + "enum": [ + "queued", + "completed" + ], + "type": "string" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" +}
- Changed
merge_transactions1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + }, + "status": { + "const": "queued", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "requestId", + "transactionId" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "status": { + "const": "completed", + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "success", + "transactionId" + ], + "type": "object" + } + ], + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "status": { + "enum": [ + "queued", + "completed" + ], + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "transactionId" + ], + "type": "object" +}
- Removed
preview_accounting_rules - Changed
preview_transaction_classification2 fields changed- changed
Input schema / properties / portfolioRef / descriptionPrevious value: -"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it."New value: +"Portfolio name or slug inside that workspace. Call list_portfolios to resolve it." - changed
Input schema / properties / workspaceRef / descriptionPrevious value: -"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."New value: +"Workspace name or slug. Call list_workspaces to resolve it."
- Removed
read_help_article - Changed
reprocess_transaction1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "completed": { + "type": "boolean" + }, + "finalState": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {} + }, + "required": [ + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "requests": { + "additionalProperties": false, + "properties": { + "all": { + "items": { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "type": "array" + }, + "primary": { + "type": "string" + } + }, + "required": [ + "primary", + "all" + ], + "type": "object" + }, + "status": { + "const": "queued", + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "type": "array" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "requestId", + "transactionId" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "status": { + "const": "completed", + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "success", + "transactionId" + ], + "type": "object" + } + ], + "properties": { + "completed": { + "type": "boolean" + }, + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "finalState": { + "additionalProperties": false, + "properties": { + "classificationState": { + "type": "string" + }, + "errorTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "hasError": { + "type": "boolean" + }, + "operationType": { + "type": "string" + }, + "suggestedAction": {} + }, + "required": [ + "hasError", + "errorTypes", + "suggestedAction" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "requests": { + "additionalProperties": false, + "properties": { + "all": { + "items": { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "type": "array" + }, + "primary": { + "type": "string" + } + }, + "required": [ + "primary", + "all" + ], + "type": "object" + }, + "status": { + "enum": [ + "queued", + "completed" + ], + "type": "string" + }, + "statuses": { + "items": { + "additionalProperties": false, + "properties": { + "appProgress": { + "additionalProperties": false, + "properties": { + "completed": { + "type": "number" + }, + "total": { + "type": "number" + }, + "transactionsSynced": { + "type": "number" + } + }, + "required": [ + "completed", + "total", + "transactionsSynced" + ], + "type": "object" + }, + "completedAt": { + "format": "date-time", + "type": "string" + }, + "createdAt": { + "format": "date-time", + "type": "string" + }, + "error": { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "code": { + "type": "string" + }, + "details": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "message": { + "type": "string" + }, + "requestId": { + "type": "string" + } + }, + "required": [ + "code", + "message", + "requestId" + ], + "type": "object" + } + }, + "required": [ + "error" + ], + "type": "object" + }, + "finishedOn": { + "type": "number" + }, + "progress": { + "type": "number" + }, + "requestId": { + "type": "string" + }, + "result": { + "additionalProperties": false, + "properties": { + "downloadUrl": { + "type": "string" + }, + "fileSize": { + "type": "number" + }, + "format": { + "enum": [ + "xlsx", + "pdf", + "json" + ], + "type": "string" + } + }, + "required": [ + "downloadUrl", + "fileSize", + "format" + ], + "type": "object" + }, + "returnValue": {}, + "status": { + "enum": [ + "pending", + "active", + "delayed", + "completed", + "failed" + ], + "type": "string" + }, + "type": { + "enum": [ + "sync", + "export", + "recompute", + "reclassify" + ], + "type": "string" + }, + "updatedAt": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "requestId", + "type", + "status", + "progress", + "createdAt", + "updatedAt" + ], + "type": "object" + }, + "type": "array" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "transactionId" + ], + "type": "object" +}
- Changed
request_report_export1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + } + }, + "required": [ + "requestId" + ], + "type": "object" +}
- Removed
search_help_articles - Removed
set_fmv_override - Changed
simulate_fiat_quote1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "corridor": { + "additionalProperties": false, + "properties": { + "amountBounds": { + "additionalProperties": false, + "properties": { + "maxAmount": { + "type": "string" + }, + "minAmount": { + "type": "string" + } + }, + "required": [ + "minAmount", + "maxAmount" + ], + "type": "object" + }, + "network": { + "type": "string" + }, + "receivingCurrency": { + "type": "string" + }, + "recipientBankCountry": { + "type": "string" + }, + "senderCurrency": { + "type": "string" + } + }, + "required": [ + "network", + "receivingCurrency", + "recipientBankCountry", + "senderCurrency" + ], + "type": "object" + }, + "note": { + "type": "string" + }, + "quote": { + "additionalProperties": false, + "properties": { + "exchangeRate": { + "type": "string" + }, + "itemizedFees": { + "items": { + "additionalProperties": false, + "properties": { + "amount": { + "type": "string" + }, + "key": { + "type": "string" + }, + "label": { + "type": "string" + }, + "percentage": { + "type": "string" + } + }, + "required": [ + "key", + "label", + "amount" + ], + "type": "object" + }, + "type": "array" + }, + "processingFee": { + "type": "string" + }, + "quoteValiditySeconds": { + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" + }, + "receivingCurrency": { + "type": "string" + }, + "senderCurrency": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "totalReceivable": { + "type": "string" + } + }, + "required": [ + "exchangeRate", + "senderCurrency", + "receivingCurrency", + "processingFee", + "itemizedFees", + "totalReceivable", + "quoteValiditySeconds", + "summary" + ], + "type": "object" + }, + "status": { + "enum": [ + "quoted", + "corridor_unavailable", + "amount_out_of_range", + "limit_skipped" + ], + "type": "string" + } + }, + "required": [ + "status", + "corridor" + ], + "type": "object" +}
- Changed
split_transactions1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "requestId": { + "type": "string" + }, + "status": { + "const": "queued", + "type": "string" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "requestId", + "transactionId" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "status": { + "const": "completed", + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "success", + "transactionId" + ], + "type": "object" + } + ], + "properties": { + "error": { + "additionalProperties": false, + "properties": { + "message": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "name", + "message" + ], + "type": "object" + }, + "requestId": { + "type": "string" + }, + "status": { + "enum": [ + "queued", + "completed" + ], + "type": "string" + }, + "success": { + "type": "boolean" + }, + "transactionId": { + "type": "string" + } + }, + "required": [ + "status", + "transactionId" + ], + "type": "object" +}
- Removed
update_journal_entry_line - Removed
update_transaction
13 tool updates
- Changed
add_wallet2 fields changed- added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
create_portfolio1 field changed- added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
delete_accounting_rule3 fields changed- added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / ruleRef / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
edit_accounting_rules16 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "enabled": { - "$ref": "#/properties/enabled" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "enum": [ - "create" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "name", - "conditions", - "action" - ], - "type": "object" - }, - { - "additionalProperties": false, - "anyOf": [ - { - "properties": { - "name": { - "$ref": "#/properties/name" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - { - "properties": { - "conditions": { - "$ref": "#/properties/conditions" - } - }, - "required": [ - "conditions" - ], - "type": "object" - }, - { - "properties": { - "action": { - "$ref": "#/properties/action" - } - }, - "required": [ - "action" - ], - "type": "object" - } - ], - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "enum": [ - "update" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "enabled": { - "$ref": "#/properties/enabled" - }, - "operation": { - "enum": [ - "set_enabled" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef", - "enabled" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "operation": { - "enum": [ - "reorder" - ], - "type": "string" - }, - "orderedRuleRefs": { - "$ref": "#/properties/orderedRuleRefs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "orderedRuleRefs" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "enabled": { + "$ref": "#/properties/enabled" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Create a new rule.", + "enum": [ + "create" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "name", + "conditions", + "action" + ], + "type": "object" + }, + { + "additionalProperties": false, + "anyOf": [ + { + "properties": { + "name": { + "$ref": "#/properties/name" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + { + "properties": { + "conditions": { + "$ref": "#/properties/conditions" + } + }, + "required": [ + "conditions" + ], + "type": "object" + }, + { + "properties": { + "action": { + "$ref": "#/properties/action" + } + }, + "required": [ + "action" + ], + "type": "object" + } + ], + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Change the name, conditions, or actions of an existing rule.", + "enum": [ + "update" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "enabled": { + "$ref": "#/properties/enabled" + }, + "operation": { + "description": "Turn an existing rule on or off without changing it.", + "enum": [ + "set_enabled" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef", + "enabled" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "operation": { + "description": "Set the evaluation order of every rule in the portfolio.", + "enum": [ + "reorder" + ], + "type": "string" + }, + "orderedRuleRefs": { + "$ref": "#/properties/orderedRuleRefs" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "orderedRuleRefs" + ], + "type": "object" + } +] - added
Input schema / properties / action / properties / actions / descriptionAdded value: +"What the rule changes when it matches. At most one action of each type." - changed
Input schema / properties / action / properties / actions / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "counterpartyName": { - "minLength": 1, - "type": "string" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_COUNTERPARTY" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "counterpartyName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_LEDGER_ACCOUNT" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "accountNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeKey", - "responsibilityCenterName" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_RESPONSIBILITY_CENTERS" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "responsibilityCenterAssignments" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "counterpartyName": { + "description": "Counterparty name, from list_counterparties.", + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_COUNTERPARTY" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "counterpartyName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "description": "Chart-of-accounts number, from list_ledger_accounts.", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_LEDGER_ACCOUNT" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "accountNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "responsibilityCenterName": { + "description": "Responsibility center name, from list_responsibility_centers.", + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeKey", + "responsibilityCenterName" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_RESPONSIBILITY_CENTERS" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "responsibilityCenterAssignments" + ], + "type": "object" + } +] - added
Input schema / properties / action / properties / formatVersion / descriptionAdded value: +"Structure version of this envelope. Always 1." - added
Input schema / properties / conditions / properties / all / descriptionAdded value: +"Conditions that must all match for the rule to fire. At least one is required." - changed
Input schema / properties / conditions / properties / all / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fromAddressLabel" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "toAddressLabel" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fromAddress" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "toAddress" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "direction" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "notEquals" - ], - "type": "string" - }, - "value": { - "enum": [ - "IN", - "OUT", - "GAS" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "asset" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "assetClass" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "ERC20", - "FIAT", - "NATIVE", - "REBASE_LST", - "INTEREST_BEARING", - "VALUE_ACCRUING", - "LP_SHARE", - "DEBT", - "REFLECT", - "VOTE_ESCROWED", - "NFT" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "stablecoin" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "type": "boolean" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "chain" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "operationType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "DEPOSIT_FIAT", - "INCOME", - "REFUND", - "WITHDRAWAL_FIAT", - "EXPENSE", - "BUY", - "SELL", - "EXCHANGE", - "SWAP", - "MOVE", - "INTERCOMPANY_SEND", - "INTERCOMPANY_RECEIVE", - "STAKE", - "UNSTAKE", - "PROTOCOL_DEPOSIT", - "PROTOCOL_WITHDRAW", - "VAULT_DEPOSIT", - "VAULT_WITHDRAW", - "LP_IN", - "LP_OUT", - "LOAN_BORROW", - "LOAN_REPAY", - "LOAN_LIQUIDATION", - "LEND_GIVE", - "LEND_WITHDRAW", - "ADJUSTMENT", - "UNCATEGORIZED", - "SPAM" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountSubType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "EXT", - "BNK", - "INC", - "EXP", - "LINT", - "LLIQ", - "LQLOSS", - "CLOSS", - "CBNK", - "CBAS", - "CRE", - "CGL", - "CEXP", - "CINC", - "TRADING_REVENUE", - "COGS", - "INVENTORY_VALUATION_ADJUSTMENT", - "INVENTORY_COGS_ADJUSTMENT", - "INVENTORY_WRITE_DOWN", - "INVENTORY_REMEASUREMENT_GAIN", - "INVENTORY_REMEASUREMENT_LOSS", - "CNP", - "UINC", - "UEXP", - "OFEXP", - "OFINC", - "ICINV", - "CAP", - "UNREALISED_FV_GAIN", - "UNREALISED_FV_LOSS", - "CFVA" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "gt" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "lt" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "gte" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "lte" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "between" - ], - "type": "string" - }, - "value": { - "items": { - "anyOf": [ - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - }, - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - ] - }, - "maxItems": 2, - "minItems": 2, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } - ] - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "entryType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "wallet" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "description": "Wallet address", - "minLength": 1, - "type": "string" - }, - "chainId": { - "description": "Chain ID", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountNumber" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "operator", - "field", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "counterparty" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "direction" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "notEquals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "IN", + "OUT", + "GAS" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "asset" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "assetClass" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ERC20", + "FIAT", + "NATIVE", + "REBASE_LST", + "INTEREST_BEARING", + "VALUE_ACCRUING", + "LP_SHARE", + "DEBT", + "REFLECT", + "VOTE_ESCROWED", + "NFT" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "stablecoin" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "type": "boolean" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "chain" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "operationType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountSubType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "EXT", + "BNK", + "INC", + "EXP", + "LINT", + "LLIQ", + "LQLOSS", + "CLOSS", + "CBNK", + "CBAS", + "CRE", + "CGL", + "CEXP", + "CINC", + "TRADING_REVENUE", + "COGS", + "INVENTORY_VALUATION_ADJUSTMENT", + "INVENTORY_COGS_ADJUSTMENT", + "INVENTORY_WRITE_DOWN", + "INVENTORY_REMEASUREMENT_GAIN", + "INVENTORY_REMEASUREMENT_LOSS", + "CNP", + "UINC", + "UEXP", + "OFEXP", + "OFINC", + "ICINV", + "CAP", + "UNREALISED_FV_GAIN", + "UNREALISED_FV_LOSS", + "CFVA" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "between" + ], + "type": "string" + }, + "value": { + "description": "Inclusive [low, high] decimal-string range.", + "items": { + "anyOf": [ + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + }, + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + ] + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } + ] + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "entryType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "wallet" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "additionalProperties": false, + "properties": { + "address": { + "description": "Wallet address", + "minLength": 1, + "type": "string" + }, + "chainId": { + "description": "Chain ID", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountNumber" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Chart-of-accounts number, from list_ledger_accounts.", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "operator", + "field", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Counterparty name, from list_counterparties.", + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } +] - added
Input schema / properties / conditions / properties / formatVersion / descriptionAdded value: +"Structure version of this envelope. Always 1." - changed
Input schema / properties / enabled / anyOfPrevious value: -[ - { - "default": true, - "type": "boolean" - }, - { - "type": "boolean" - } -]New value: +[ + { + "default": true, + "description": "Whether the rule evaluates. A disabled rule is kept but never fires.", + "type": "boolean" + }, + { + "description": "Whether the rule evaluates. A disabled rule is kept but never fires.", + "type": "boolean" + } +] - added
Input schema / properties / enabled / descriptionAdded value: +"Whether the rule evaluates. A disabled rule is kept but never fires." - added
Input schema / properties / name / descriptionAdded value: +"Human-readable rule name, shown in the rules list." - added
Input schema / properties / operation / descriptionAdded value: +"Create a new rule." - added
Input schema / properties / orderedRuleRefs / descriptionAdded value: +"Every rule handle in the portfolio, in the order they should evaluate. Rules apply in order, so earlier rules win." - added
Input schema / properties / orderedRuleRefs / items / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / ruleRef / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
get_filter_options3 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-addresses" - ], - "type": "string" - }, - "mode": { - "description": "Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses.", - "enum": [ - "from", - "to" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName", - "mode" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-account-name" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-assets" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-counterparties" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-wallets" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-responsibility-centers" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-lot-presence" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-journal-entry-presence" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filter": { - "description": "Human-readable Portfolio Transactions filter expression.", - "maxLength": 4000, - "type": "string" - }, - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-status-counts" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "portfolio-transaction-warnings" - ], - "type": "string" - }, - "pageSize": { - "default": 50, - "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "pageToken": { - "description": "Opaque token returned by the previous list response.", - "minLength": 1, - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "search": { - "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", - "type": "string" - }, - "selected": { - "anyOf": [ - { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - { - "items": { - "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", - "minLength": 1, - "type": "string" - }, - "type": "array" - } - ], - "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "description": "Flattened filter options request schema for scoped API and MCP callers.", - "properties": { - "filterName": { - "description": "Public filter option provider name.", - "enum": [ - "accounts" - ], - "type": "string" - }, - "portfolioRef": { - "minLength": 1, - "type": "string" - }, - "workspaceRef": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "filterName" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-addresses" + ], + "type": "string" + }, + "mode": { + "description": "Address side to inspect for portfolio-transaction-addresses. Required for address filters. Use from for source addresses and to for destination addresses.", + "enum": [ + "from", + "to" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName", + "mode" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-account-name" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-assets" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-counterparties" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-wallets" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-responsibility-centers" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-lot-presence" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-journal-entry-presence" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filter": { + "description": "Human-readable Portfolio Transactions filter expression.", + "maxLength": 4000, + "type": "string" + }, + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-status-counts" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "portfolio-transaction-warnings" + ], + "type": "string" + }, + "pageSize": { + "default": 50, + "description": "Requested number of resources to return. Oversized values are clamped to the route limit.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "pageToken": { + "description": "Opaque token returned by the previous list response.", + "minLength": 1, + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "search": { + "description": "Optional case-insensitive text search applied by the provider to labels, addresses, names, or other provider-owned searchable fields.", + "type": "string" + }, + "selected": { + "anyOf": [ + { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + { + "items": { + "description": "Stable option value that is already selected in the FilterBar. Example: from:eth-mainnet:0xabc.", + "minLength": 1, + "type": "string" + }, + "type": "array" + } + ], + "description": "Already-selected option values for selected-value hydration from URL filter state. A single HTTP query value is accepted as a one-element array." + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "Flattened filter options request schema for scoped API and MCP callers.", + "properties": { + "filterName": { + "description": "Public filter option provider name.", + "enum": [ + "accounts" + ], + "type": "string" + }, + "portfolioRef": { + "description": "Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + }, + "workspaceRef": { + "description": "Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "filterName" + ], + "type": "object" + } +] - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
get_portfolio_transaction4 fields changed- added
Input schema / properties / include / descriptionAdded value: +"Also return the source transactions this one was built from. Omit for the accounting view alone." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / transactionId / descriptionAdded value: +"Accounting transaction handle, from list_portfolio_transactions." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
get_raw_transaction4 fields changed- added
Input schema / properties / includeDetails / descriptionAdded value: +"Also return blockchain event logs and decoded contract calls. Large, so request it only when inspecting one transaction." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / rawTransactionId / descriptionAdded value: +"Source transaction handle, from list_raw_transactions." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
import_adjustment_journals6 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "preview" - ], - "type": "string" - }, - "contentBase64": { - "$ref": "#/properties/contentBase64" - }, - "fileName": { - "$ref": "#/properties/fileName" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "action", - "contentBase64", - "fileName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "action": { - "enum": [ - "post" - ], - "type": "string" - }, - "contentBase64": { - "$ref": "#/properties/contentBase64" - }, - "fileName": { - "$ref": "#/properties/fileName" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "previewToken": { - "$ref": "#/properties/previewToken" - }, - "resolutions": { - "$ref": "#/properties/resolutions" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "action", - "contentBase64", - "fileName", - "previewToken", - "resolutions" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "action": { + "description": "Parse the file and report what it would import, writing nothing. Always preview before posting.", + "enum": [ + "preview" + ], + "type": "string" + }, + "contentBase64": { + "$ref": "#/properties/contentBase64" + }, + "fileName": { + "$ref": "#/properties/fileName" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "action", + "contentBase64", + "fileName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "action": { + "description": "Commit the import that a preview of the same file produced.", + "enum": [ + "post" + ], + "type": "string" + }, + "contentBase64": { + "$ref": "#/properties/contentBase64" + }, + "fileName": { + "$ref": "#/properties/fileName" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "previewToken": { + "$ref": "#/properties/previewToken" + }, + "resolutions": { + "$ref": "#/properties/resolutions" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "action", + "contentBase64", + "fileName", + "previewToken", + "resolutions" + ], + "type": "object" + } +] - added
Input schema / properties / action / descriptionAdded value: +"Parse the file and report what it would import, writing nothing. Always preview before posting." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / previewToken / descriptionAdded value: +"Token returned by the matching preview, proving the file has not changed since." - changed
Input schema / properties / resolutions / items / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "minLength": 1, - "type": "string" - }, - "kind": { - "enum": [ - "account" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - } - }, - "required": [ - "accountNumber", - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "externalId": { - "minLength": 1, - "type": "string" - }, - "kind": { - "enum": [ - "counterparty" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - } - }, - "required": [ - "externalId", - "kind", - "locator" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "kind": { - "enum": [ - "counterparty" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "name": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "kind", - "locator", - "name" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "centerName": { - "minLength": 1, - "type": "string" - }, - "kind": { - "enum": [ - "responsibilityCenter" - ], - "type": "string" - }, - "locator": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "csv" - ], - "type": "string" - }, - "lineNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "format", - "lineNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "format": { - "enum": [ - "xlsx" - ], - "type": "string" - }, - "rowNumber": { - "maximum": 9007199254740991, - "minimum": 1, - "type": "integer" - }, - "sheetName": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "format", - "rowNumber", - "sheetName" - ], - "type": "object" - } - ] - }, - "typeKey": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "centerName", - "kind", - "locator", - "typeKey" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "description": "Ledger account to use for that row, from list_ledger_accounts.", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "account" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + } + }, + "required": [ + "accountNumber", + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "externalId": { + "description": "Counterparty's external identifier, as recorded on the counterparty.", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + } + }, + "required": [ + "externalId", + "kind", + "locator" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "name": { + "description": "Counterparty name to use for that row, from list_counterparties.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "kind", + "locator", + "name" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "centerName": { + "description": "Responsibility center to use for that row, from list_responsibility_centers.", + "minLength": 1, + "type": "string" + }, + "kind": { + "description": "Kind of reference this row fixes.", + "enum": [ + "responsibilityCenter" + ], + "type": "string" + }, + "locator": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "csv" + ], + "type": "string" + }, + "lineNumber": { + "description": "1-based line number in the CSV file.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + } + }, + "required": [ + "format", + "lineNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "format": { + "description": "Source file format.", + "enum": [ + "xlsx" + ], + "type": "string" + }, + "rowNumber": { + "description": "1-based row number within the sheet.", + "maximum": 9007199254740991, + "minimum": 1, + "type": "integer" + }, + "sheetName": { + "description": "Worksheet the row belongs to.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "format", + "rowNumber", + "sheetName" + ], + "type": "object" + } + ] + }, + "typeKey": { + "description": "Responsibility center type the name belongs to, such as costCenter.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "centerName", + "kind", + "locator", + "typeKey" + ], + "type": "object" + } +] - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
list_accounting_rules16 fields changed- added
Input schema / properties / accountNumbers / descriptionAdded value: +"Keep only rules that reference one of these ledger accounts." - added
Input schema / properties / accountNumbers / items / descriptionAdded value: +"Chart-of-accounts number, from list_ledger_accounts." - added
Input schema / properties / actionTypes / descriptionAdded value: +"Keep only rules that perform one of these actions." - added
Input schema / properties / actionTypes / items / descriptionAdded value: +"What a rule changes when it matches." - added
Input schema / properties / assetIds / descriptionAdded value: +"Keep only rules that reference one of these assets, by asset symbol." - added
Input schema / properties / conditionFields / descriptionAdded value: +"Keep only rules that test one of these transaction fields." - added
Input schema / properties / conditionFields / items / descriptionAdded value: +"Which part of a transaction the condition tests." - added
Input schema / properties / counterpartyNames / descriptionAdded value: +"Keep only rules that reference one of these counterparties." - added
Input schema / properties / counterpartyNames / items / descriptionAdded value: +"Counterparty name, from list_counterparties." - added
Input schema / properties / enabled / descriptionAdded value: +"Keep only enabled rules, or only disabled ones. Omit to return both." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / ruleRef / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / search / descriptionAdded value: +"Free-text match against rule names." - added
Input schema / properties / wallets / descriptionAdded value: +"Keep only rules whose conditions name one of these wallets." - added
Input schema / properties / wallets / items / descriptionAdded value: +"Wallet as chainId:walletAddress, e.g. eth-mainnet:0xabc." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
list_portfolio_transactions2 fields changed- added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
list_raw_transactions11 fields changed- added
Input schema / properties / chainId / descriptionAdded value: +"Blockchain to filter by, such as eth-mainnet. Call list_chains for the supported set." - added
Input schema / properties / chainIds / descriptionAdded value: +"Blockchains to filter by, such as eth-mainnet. Call list_chains for the supported set." - added
Input schema / properties / fromDate / descriptionAdded value: +"Earliest transaction timestamp to include, as an ISO 8601 datetime." - added
Input schema / properties / includeSpamTokens / descriptionAdded value: +"Include activity for tokens flagged as spam. Excluded by default." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / processingState / descriptionAdded value: +"Keep only source transactions in this processing state." - added
Input schema / properties / sort / descriptionAdded value: +"Timestamp order. Prefix with - for newest first." - added
Input schema / properties / toDate / descriptionAdded value: +"Latest transaction timestamp to include, as an ISO 8601 datetime." - added
Input schema / properties / txHash / descriptionAdded value: +"Exact on-chain transaction hash." - added
Input schema / properties / walletAddress / descriptionAdded value: +"Wallet to filter by. Supply chainId alongside it." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
preview_accounting_rules17 fields changed- changed
Input schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "enum": [ - "current" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "enabled": { - "$ref": "#/properties/enabled" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "enum": [ - "create" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "name", - "conditions", - "action" - ], - "type": "object" - }, - { - "additionalProperties": false, - "anyOf": [ - { - "properties": { - "name": { - "$ref": "#/properties/name" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - { - "properties": { - "conditions": { - "$ref": "#/properties/conditions" - } - }, - "required": [ - "conditions" - ], - "type": "object" - }, - { - "properties": { - "action": { - "$ref": "#/properties/action" - } - }, - "required": [ - "action" - ], - "type": "object" - } - ], - "properties": { - "action": { - "$ref": "#/properties/action" - }, - "conditions": { - "$ref": "#/properties/conditions" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "name": { - "$ref": "#/properties/name" - }, - "operation": { - "enum": [ - "update" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "enabled": { - "$ref": "#/properties/enabled" - }, - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "enum": [ - "set_enabled" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef", - "enabled" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "enum": [ - "reorder" - ], - "type": "string" - }, - "orderedRuleRefs": { - "$ref": "#/properties/orderedRuleRefs" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "orderedRuleRefs" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "maxAffected": { - "$ref": "#/properties/maxAffected" - }, - "operation": { - "enum": [ - "delete" - ], - "type": "string" - }, - "portfolioRef": { - "$ref": "#/properties/portfolioRef" - }, - "ruleRef": { - "$ref": "#/properties/ruleRef" - }, - "workspaceRef": { - "$ref": "#/properties/workspaceRef" - } - }, - "required": [ - "workspaceRef", - "portfolioRef", - "operation", - "ruleRef" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Preview the saved rules as they stand, changing nothing.", + "enum": [ + "current" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "enabled": { + "$ref": "#/properties/enabled" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Create a new rule.", + "enum": [ + "create" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "name", + "conditions", + "action" + ], + "type": "object" + }, + { + "additionalProperties": false, + "anyOf": [ + { + "properties": { + "name": { + "$ref": "#/properties/name" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + { + "properties": { + "conditions": { + "$ref": "#/properties/conditions" + } + }, + "required": [ + "conditions" + ], + "type": "object" + }, + { + "properties": { + "action": { + "$ref": "#/properties/action" + } + }, + "required": [ + "action" + ], + "type": "object" + } + ], + "properties": { + "action": { + "$ref": "#/properties/action" + }, + "conditions": { + "$ref": "#/properties/conditions" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "name": { + "$ref": "#/properties/name" + }, + "operation": { + "description": "Change the name, conditions, or actions of an existing rule.", + "enum": [ + "update" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "enabled": { + "$ref": "#/properties/enabled" + }, + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Turn an existing rule on or off without changing it.", + "enum": [ + "set_enabled" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef", + "enabled" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Set the evaluation order of every rule in the portfolio.", + "enum": [ + "reorder" + ], + "type": "string" + }, + "orderedRuleRefs": { + "$ref": "#/properties/orderedRuleRefs" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "orderedRuleRefs" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "maxAffected": { + "$ref": "#/properties/maxAffected" + }, + "operation": { + "description": "Preview removing a rule, without removing it.", + "enum": [ + "delete" + ], + "type": "string" + }, + "portfolioRef": { + "$ref": "#/properties/portfolioRef" + }, + "ruleRef": { + "$ref": "#/properties/ruleRef" + }, + "workspaceRef": { + "$ref": "#/properties/workspaceRef" + } + }, + "required": [ + "workspaceRef", + "portfolioRef", + "operation", + "ruleRef" + ], + "type": "object" + } +] - added
Input schema / properties / action / properties / actions / descriptionAdded value: +"What the rule changes when it matches. At most one action of each type." - changed
Input schema / properties / action / properties / actions / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "counterpartyName": { - "minLength": 1, - "type": "string" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_COUNTERPARTY" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "counterpartyName" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "accountNumber": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_LEDGER_ACCOUNT" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "accountNumber" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "responsibilityCenterAssignments": { - "items": { - "additionalProperties": false, - "properties": { - "responsibilityCenterName": { - "minLength": 1, - "type": "string" - }, - "responsibilityCenterTypeKey": { - "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", - "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", - "type": "string" - } - }, - "required": [ - "responsibilityCenterTypeKey", - "responsibilityCenterName" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - }, - "target": { - "enum": [ - "LINE" - ], - "type": "string" - }, - "type": { - "enum": [ - "SET_RESPONSIBILITY_CENTERS" - ], - "type": "string" - } - }, - "required": [ - "type", - "target", - "responsibilityCenterAssignments" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "counterpartyName": { + "description": "Counterparty name, from list_counterparties.", + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_COUNTERPARTY" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "counterpartyName" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "accountNumber": { + "description": "Chart-of-accounts number, from list_ledger_accounts.", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_LEDGER_ACCOUNT" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "accountNumber" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "responsibilityCenterAssignments": { + "items": { + "additionalProperties": false, + "properties": { + "responsibilityCenterName": { + "description": "Responsibility center name, from list_responsibility_centers.", + "minLength": 1, + "type": "string" + }, + "responsibilityCenterTypeKey": { + "description": "Stable responsibility-center type key. It uses lowercase alphanumeric snake_case segments.", + "pattern": "^[a-z0-9]+(_[a-z0-9]+)*$", + "type": "string" + } + }, + "required": [ + "responsibilityCenterTypeKey", + "responsibilityCenterName" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "target": { + "description": "What the change applies to: a journal line or the transaction.", + "enum": [ + "LINE" + ], + "type": "string" + }, + "type": { + "description": "Which change this action makes.", + "enum": [ + "SET_RESPONSIBILITY_CENTERS" + ], + "type": "string" + } + }, + "required": [ + "type", + "target", + "responsibilityCenterAssignments" + ], + "type": "object" + } +] - added
Input schema / properties / action / properties / formatVersion / descriptionAdded value: +"Structure version of this envelope. Always 1." - added
Input schema / properties / conditions / properties / all / descriptionAdded value: +"Conditions that must all match for the rule to fire. At least one is required." - changed
Input schema / properties / conditions / properties / all / items / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fromAddressLabel" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "toAddressLabel" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains", - "notEquals", - "notContains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fromAddress" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "toAddress" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "contains" - ], - "type": "string" - }, - "value": { - "minLength": 1, - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "direction" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals", - "notEquals" - ], - "type": "string" - }, - "value": { - "enum": [ - "IN", - "OUT", - "GAS" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "asset" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "assetClass" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "ERC20", - "FIAT", - "NATIVE", - "REBASE_LST", - "INTEREST_BEARING", - "VALUE_ACCRUING", - "LP_SHARE", - "DEBT", - "REFLECT", - "VOTE_ESCROWED", - "NFT" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "stablecoin" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "type": "boolean" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "chain" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "operationType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "DEPOSIT_FIAT", - "INCOME", - "REFUND", - "WITHDRAWAL_FIAT", - "EXPENSE", - "BUY", - "SELL", - "EXCHANGE", - "SWAP", - "MOVE", - "INTERCOMPANY_SEND", - "INTERCOMPANY_RECEIVE", - "STAKE", - "UNSTAKE", - "PROTOCOL_DEPOSIT", - "PROTOCOL_WITHDRAW", - "VAULT_DEPOSIT", - "VAULT_WITHDRAW", - "LP_IN", - "LP_OUT", - "LOAN_BORROW", - "LOAN_REPAY", - "LOAN_LIQUIDATION", - "LEND_GIVE", - "LEND_WITHDRAW", - "ADJUSTMENT", - "UNCATEGORIZED", - "SPAM" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountSubType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "EXT", - "BNK", - "INC", - "EXP", - "LINT", - "LLIQ", - "LQLOSS", - "CLOSS", - "CBNK", - "CBAS", - "CRE", - "CGL", - "CEXP", - "CINC", - "TRADING_REVENUE", - "COGS", - "INVENTORY_VALUATION_ADJUSTMENT", - "INVENTORY_COGS_ADJUSTMENT", - "INVENTORY_WRITE_DOWN", - "INVENTORY_REMEASUREMENT_GAIN", - "INVENTORY_REMEASUREMENT_LOSS", - "CNP", - "UINC", - "UEXP", - "OFEXP", - "OFINC", - "ICINV", - "CAP", - "UNREALISED_FV_GAIN", - "UNREALISED_FV_LOSS", - "CFVA" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "gt" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "lt" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "gte" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "lte" - ], - "type": "string" - }, - "value": { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "fiatValue" - ], - "type": "string" - }, - "operator": { - "enum": [ - "between" - ], - "type": "string" - }, - "value": { - "items": { - "anyOf": [ - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - }, - { - "pattern": "^-?\\d+(\\.\\d+)?$", - "type": "string" - } - ] - }, - "maxItems": 2, - "minItems": 2, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } - ] - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "entryType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "equals" - ], - "type": "string" - }, - "value": { - "enum": [ - "DR", - "CR" - ], - "type": "string" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountType" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "enum": [ - "ASSET", - "LIABILITY", - "EQUITY", - "INCOME", - "EXPENSE" - ], - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "wallet" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "description": "Wallet address", - "minLength": 1, - "type": "string" - }, - "chainId": { - "description": "Chain ID", - "minLength": 1, - "type": "string" - } - }, - "required": [ - "chainId", - "address" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "accountNumber" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "maxLength": 8, - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "operator", - "field", - "value" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "field": { - "enum": [ - "counterparty" - ], - "type": "string" - }, - "operator": { - "enum": [ - "in", - "notIn" - ], - "type": "string" - }, - "value": { - "items": { - "minLength": 1, - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "field", - "operator", - "value" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddressLabel" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains", + "notEquals", + "notContains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "fromAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "toAddress" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "contains" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "direction" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals", + "notEquals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "IN", + "OUT", + "GAS" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "asset" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "assetClass" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ERC20", + "FIAT", + "NATIVE", + "REBASE_LST", + "INTEREST_BEARING", + "VALUE_ACCRUING", + "LP_SHARE", + "DEBT", + "REFLECT", + "VOTE_ESCROWED", + "NFT" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "stablecoin" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "type": "boolean" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "chain" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "operationType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountSubType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "EXT", + "BNK", + "INC", + "EXP", + "LINT", + "LLIQ", + "LQLOSS", + "CLOSS", + "CBNK", + "CBAS", + "CRE", + "CGL", + "CEXP", + "CINC", + "TRADING_REVENUE", + "COGS", + "INVENTORY_VALUATION_ADJUSTMENT", + "INVENTORY_COGS_ADJUSTMENT", + "INVENTORY_WRITE_DOWN", + "INVENTORY_REMEASUREMENT_GAIN", + "INVENTORY_REMEASUREMENT_LOSS", + "CNP", + "UINC", + "UEXP", + "OFEXP", + "OFINC", + "ICINV", + "CAP", + "UNREALISED_FV_GAIN", + "UNREALISED_FV_LOSS", + "CFVA" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lt" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "gte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "lte" + ], + "type": "string" + }, + "value": { + "description": "Decimal fiat amount to compare against.", + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Condition field.", + "enum": [ + "fiatValue" + ], + "type": "string" + }, + "operator": { + "description": "Comparison operator.", + "enum": [ + "between" + ], + "type": "string" + }, + "value": { + "description": "Inclusive [low, high] decimal-string range.", + "items": { + "anyOf": [ + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + }, + { + "pattern": "^-?\\d+(\\.\\d+)?$", + "type": "string" + } + ] + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } + ] + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "entryType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "equals" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "enum": [ + "DR", + "CR" + ], + "type": "string" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountType" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "enum": [ + "ASSET", + "LIABILITY", + "EQUITY", + "INCOME", + "EXPENSE" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "wallet" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "additionalProperties": false, + "properties": { + "address": { + "description": "Wallet address", + "minLength": 1, + "type": "string" + }, + "chainId": { + "description": "Chain ID", + "minLength": 1, + "type": "string" + } + }, + "required": [ + "chainId", + "address" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "accountNumber" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Chart-of-accounts number, from list_ledger_accounts.", + "maxLength": 8, + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "operator", + "field", + "value" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "field": { + "description": "Which part of the transaction this condition tests.", + "enum": [ + "counterparty" + ], + "type": "string" + }, + "operator": { + "description": "How the field is compared with value.", + "enum": [ + "in", + "notIn" + ], + "type": "string" + }, + "value": { + "description": "The value the field is compared against.", + "items": { + "description": "Counterparty name, from list_counterparties.", + "minLength": 1, + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "value" + ], + "type": "object" + } +] - added
Input schema / properties / conditions / properties / formatVersion / descriptionAdded value: +"Structure version of this envelope. Always 1." - changed
Input schema / properties / enabled / anyOfPrevious value: -[ - { - "default": true, - "type": "boolean" - }, - { - "type": "boolean" - } -]New value: +[ + { + "default": true, + "description": "Whether the rule evaluates. A disabled rule is kept but never fires.", + "type": "boolean" + }, + { + "description": "Whether the rule evaluates. A disabled rule is kept but never fires.", + "type": "boolean" + } +] - added
Input schema / properties / enabled / descriptionAdded value: +"Whether the rule evaluates. A disabled rule is kept but never fires." - added
Input schema / properties / maxAffected / descriptionAdded value: +"How many affected transactions to sample, at most 25. affectedCount in the result equals this sample size; check candidateCount for the true total match count." - added
Input schema / properties / name / descriptionAdded value: +"Human-readable rule name, shown in the rules list." - added
Input schema / properties / operation / descriptionAdded value: +"Preview the saved rules as they stand, changing nothing." - added
Input schema / properties / orderedRuleRefs / descriptionAdded value: +"Every rule handle in the portfolio, in the order they should evaluate. Rules apply in order, so earlier rules win." - added
Input schema / properties / orderedRuleRefs / items / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / ruleRef / descriptionAdded value: +"Saved rule handle, from list_accounting_rules." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
- Changed
preview_transaction_classification5 fields changed- added
Input schema / properties / operations / items / properties / portfolioTransactionId / descriptionAdded value: +"Accounting transaction the movement currently belongs to." - added
Input schema / properties / operations / items / properties / txIndex / descriptionAdded value: +"Position of the movement within that source transaction, from the same walletOperation." - added
Input schema / properties / operations / items / properties / walletTransactionId / descriptionAdded value: +"Source transaction the wallet movement belongs to, from a walletOperation in a read tool result." - added
Input schema / properties / portfolioRef / descriptionAdded value: +"Portfolio name or slug inside that workspace. Call list_portfolios, or find_portfolios when the user named one, to resolve it." - added
Input schema / properties / workspaceRef / descriptionAdded value: +"Workspace name or slug. Call list_workspaces, or find_workspaces when the user named one, to resolve it."
1 tool update
- Changed
split_transactions1 field changed- changed
Input schema / properties / operations / descriptionPrevious value: -"Operations to split into a new transaction"New value: +"Whole existing operation handles to move unchanged into a new transaction; do not use this to divide one normalized transfer amount into new economic legs"
1 tool update
- Changed
preview_transaction_classification14 fields changed- changed
Input schema / properties / operations / descriptionPrevious value: -"Wallet operations to classify together as one transaction"New value: +"Exact transfer-operation handles returned by transaction reads, including the accounting transaction each operation currently belongs to" - added
Input schema / properties / operations / items / properties / portfolioTransactionIdAdded value: +{ + "minLength": 1, + "type": "string" +} - removed
Input schema / properties / operations / items / properties / txIndex / descriptionRemoved value: -"Transfer index within the wallet transaction" - added
Input schema / properties / operations / items / properties / txIndex / maximumAdded value: +2147483647 - added
Input schema / properties / operations / items / properties / txIndex / minimumAdded value: +0 - removed
Input schema / properties / operations / items / properties / walletTransactionId / descriptionRemoved value: -"Wallet transaction handle (from a walletOperation)" - added
Input schema / properties / operations / items / properties / walletTransactionId / minLengthAdded value: +1 - changed
Input schema / properties / operations / items / requiredPrevious value: -[ - "walletTransactionId", - "txIndex" -]New value: +[ + "portfolioTransactionId", + "walletTransactionId", + "txIndex" +] - added
Input schema / properties / operations / minItemsAdded value: +1 - removed
Input schema / properties / portfolioRef / descriptionRemoved value: -"Portfolio exact name or slug" - added
Input schema / properties / portfolioRef / minLengthAdded value: +1 - removed
Input schema / properties / workspaceRef / descriptionRemoved value: -"Workspace exact name or slug" - added
Input schema / properties / workspaceRef / minLengthAdded value: +1 - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "transactions": { + "items": { + "additionalProperties": false, + "properties": { + "operationType": { + "enum": [ + "DEPOSIT_FIAT", + "INCOME", + "REFUND", + "WITHDRAWAL_FIAT", + "EXPENSE", + "BUY", + "SELL", + "EXCHANGE", + "SWAP", + "MOVE", + "INTERCOMPANY_SEND", + "INTERCOMPANY_RECEIVE", + "STAKE", + "UNSTAKE", + "PROTOCOL_DEPOSIT", + "PROTOCOL_WITHDRAW", + "VAULT_DEPOSIT", + "VAULT_WITHDRAW", + "LP_IN", + "LP_OUT", + "LOAN_BORROW", + "LOAN_REPAY", + "LOAN_LIQUIDATION", + "LEND_GIVE", + "LEND_WITHDRAW", + "ADJUSTMENT", + "UNCATEGORIZED", + "SPAM" + ], + "type": "string" + }, + "operations": { + "items": { + "additionalProperties": false, + "properties": { + "portfolioTransactionId": { + "minLength": 1, + "type": "string" + }, + "txIndex": { + "maximum": 2147483647, + "minimum": 0, + "type": "integer" + }, + "walletTransactionId": { + "minLength": 1, + "type": "string" + } + }, + "required": [ + "portfolioTransactionId", + "walletTransactionId", + "txIndex" + ], + "type": "object" + }, + "minItems": 1, + "type": "array" + }, + "subType": { + "type": "string" + }, + "systemNotes": { + "type": "string" + }, + "timestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "operationType", + "timestamp", + "operations" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "transactions" + ], + "type": "object" +}
49 tool updates
- First observed
add_wallet - First observed
apply_accounting_rules - First observed
confirm_transaction - First observed
create_portfolio - First observed
delete_accounting_rule - First observed
edit_accounting_rules - First observed
find_portfolios - First observed
find_workspaces - First observed
full_resync - First observed
get_accounting_reference - First observed
get_asset_position - First observed
get_filter_options - First observed
get_journal_entry - First observed
get_lot_ledger - First observed
get_portfolio - First observed
get_portfolio_balances - First observed
get_portfolio_issue_summary - First observed
get_portfolio_transaction - First observed
get_raw_transaction - First observed
get_report_request_status - First observed
get_request_status - First observed
get_server_info - First observed
get_sync_status - First observed
get_wallet - First observed
import_adjustment_journals - First observed
incremental_sync - First observed
list_accounting_rules - First observed
list_chains - First observed
list_counterparties - First observed
list_ledger_accounts - First observed
list_portfolio_transactions - First observed
list_portfolios - First observed
list_raw_transactions - First observed
list_responsibility_centers - First observed
list_wallets - First observed
list_workspaces - First observed
mark_token_spam - First observed
merge_transactions - First observed
preview_accounting_rules - First observed
preview_transaction_classification - First observed
read_help_article - First observed
reprocess_transaction - First observed
request_report_export - First observed
search_help_articles - First observed
set_fmv_override - First observed
simulate_fiat_quote - First observed
split_transactions - First observed
update_journal_entry_line - First observed
update_transaction
Related MCP Connectors
One double-entry ledger derived from your invoices, bank, expenses, deposits and assets.
- OrlaOAuthfinance.orla
Personal, family and business books over fiat and crypto. Reads and records; it cannot pay.
- FinStatOAuthai.finstat
Documents in, reconciled double-entry books out. Statements, invoices, receipts, matched and posted.
- LedgerHQOAuthpro.ledgerhq
Double-entry bookkeeping: accounts, journal entries, bank feeds, reconciliation, and reports.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables autonomous financial agents and payment webhooks to create and verify immutable double-entry ledger entries, enforce debit-credit balance invariants, and generate hash-chained audit trails with fraud detection.7MIT
- FlicenseNot gradedqualityCmaintenanceFinancial data infrastructure for AI agents. Connect to a startup's books to read live P&L and bank balances, review and reclassify transactions, manage the chart of accounts, and connect banking sources.-
- AlicenseNot gradedqualityBmaintenanceEnables MCP clients and autonomous financial agents to submit payment webhook events, journal entries, or transaction streams and receive cryptographically verified, balanced double-entry ledger records with HMAC signatures and hash-chained audit telemetry. It enforces debit/credit invariants and supports fraud detection for real-time accounting workflows.7MIT
- AlicenseNot gradedqualityCmaintenanceProvides double-entry accounting for AI agents, allowing creation of a chart of accounts, posting balanced journal entries, and pulling trial-balance and general-ledger reports via the Ledger API with x402 micropayments.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.