ReportsTransaction Activity Report (§17)

Transaction Activity Report (§17)

Interval: from inclusive, to exclusive; timezone is IANA; decimals are strings. Scope: user sees only their own operations; admin sees the whole Vault (+?userId=).

curl -X GET "https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/reports/transaction_activity?from=example_string&to=example_string&timezone=UTC&dateBasis=createdAt&groupBy=day&baseCurrency=example_string&statuses=example_string&flowTypes=example_string&tokenIds=example_string&assets=example_string&networkIds=example_string&ownAddressIds=123%20Main%20St&addressIds=123%20Main%20St&folderIds=example_string&counterpartyIds=example_string&counterpartyGroupIds=example_string&counterpartyAddressIds=123%20Main%20St&categories=example_string&categoryKeys=example_string&categoryField=ticker%3AEUR%7CUSD%2Csettlement%3Abank&initiatorIds=example_string&minimumAmount=example_string&maximumAmount=example_string&includeInternal=true&counterpartyClassification=current&folderClassification=current&comparison=none&userId=example_string&breakdownBy=owner&includeShared=true" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN"
{
  "report": {
    "id": "example_string",
    "type": "example_string",
    "from": "example_string",
    "to": "example_string",
    "timezone": "example_string",
    "dateBasis": "example_string",
    "baseCurrency": "example_string",
    "classificationMode": "example_string",
    "dataCutoff": "example_string",
    "schemaVersion": "example_string",
    "generatedAt": "example_string",
    "generatedById": "example_string"
  },
  "summary": {
    "operationsCount": 3.14,
    "incomingCount": 3.14,
    "outgoingCount": 3.14,
    "incomingUsd": "example_string",
    "outgoingUsd": "example_string",
    "grossTurnoverUsd": "example_string",
    "netFlowUsd": "example_string",
    "incomingAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "outgoingAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "grossTurnoverByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "netFlowByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "averageAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "medianAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "minimumAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "maximumAmountByAsset": [
      {
        "tokenId": "example_string",
        "assetCode": "example_string",
        "assetSymbol": "example_string",
        "network": "example_string",
        "contractAddress": "123 Main St",
        "amount": "example_string"
      }
    ],
    "confirmedCount": 3.14,
    "pendingCount": 3.14,
    "awaitingApprovalCount": 3.14,
    "rejectedCount": 3.14,
    "cancelledCount": 3.14,
    "failedCount": 3.14,
    "activeDays": 3.14,
    "firstOperationAt": "example_string",
    "lastOperationAt": "example_string"
  },
  "byAsset": [
    {
      "tokenId": "example_string",
      "assetCode": "example_string",
      "assetSymbol": "example_string",
      "network": "example_string",
      "contractAddress": "123 Main St",
      "incoming": "example_string",
      "outgoing": "example_string",
      "netFlow": "example_string",
      "grossTurnover": "example_string",
      "incomingUsd": "example_string",
      "outgoingUsd": "example_string",
      "netFlowUsd": "example_string",
      "grossTurnoverUsd": "example_string",
      "operationsCount": 3.14,
      "incomingCount": 3.14,
      "outgoingCount": 3.14,
      "averageAmount": "example_string",
      "medianAmount": "example_string",
      "minimumAmount": "example_string",
      "maximumAmount": "example_string"
    }
  ],
  "byCounterparty": [
    {
      "counterpartyId": "example_string",
      "name": "John Doe",
      "kind": "example_string",
      "incomingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "outgoingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "grossTurnoverUsd": "example_string",
      "netFlowUsd": "example_string",
      "operationsCount": 3.14
    }
  ],
  "byOwnAddress": [
    {
      "addressId": "123 Main St",
      "address": "123 Main St",
      "label": "example_string",
      "derivationPath": "example_string",
      "segments": {},
      "folderSnapshots": [
        "null"
      ],
      "incomingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "outgoingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "grossTurnoverUsd": "example_string",
      "operationsCount": 3.14
    }
  ],
  "byStatus": [
    {
      "status": "example_string",
      "count": 3.14,
      "amountsByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "usdValue": "example_string"
    }
  ],
  "byCategory": [
    {
      "category": "example_string",
      "count": 3.14,
      "incomingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "outgoingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "usdValue": "example_string"
    }
  ],
  "byAddressOwner": [
    {
      "ownerId": "example_string",
      "owner": {},
      "isMe": true,
      "operationsCount": 3.14,
      "grossTurnoverUsd": "example_string"
    }
  ],
  "timeline": [
    {
      "periodStart": "example_string",
      "periodEnd": "example_string",
      "incomingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "outgoingByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "netFlowByAsset": [
        {
          "tokenId": "example_string",
          "assetCode": "example_string",
          "assetSymbol": "example_string",
          "network": "example_string",
          "contractAddress": "123 Main St",
          "amount": "example_string"
        }
      ],
      "incomingUsd": "example_string",
      "outgoingUsd": "example_string",
      "netFlowUsd": "example_string",
      "operationsCount": 3.14
    }
  ],
  "approvals": {
    "operationsRequiringApproval": 3.14,
    "approvedOperations": 3.14,
    "rejectedOperations": 3.14,
    "cancelledOperations": 3.14,
    "pendingOperations": 3.14,
    "averageApprovalSeconds": 3.14,
    "medianApprovalSeconds": 3.14,
    "maximumApprovalSeconds": 3.14
  },
  "observations": [
    {
      "code": "example_string",
      "severity": "example_string",
      "title": "example_string",
      "description": "example_string",
      "metric": "example_string",
      "currentValue": "example_string",
      "comparisonValue": "example_string",
      "changePercent": 3.14,
      "drilldownFilters": {}
    }
  ],
  "dataQuality": {
    "totalOperations": 3.14,
    "unmatchedOperations": 3.14,
    "retroactivelyMatchedOperations": 3.14,
    "operationsWithoutUsdRate": 3.14,
    "operationsWithoutSelectedDate": 3.14,
    "operationsWithoutBlockchainTime": 3.14,
    "operationsWithoutPaymentPurpose": 3.14,
    "operationsWithoutBusinessReference": 3.14,
    "uncategorizedOperations": 3.14,
    "conflictingCounterpartyClassifications": 3.14,
    "invalidOperationRelations": 3.14,
    "missingLedgerEntries": 3.14,
    "ledgerReconciliationDifferences": 3.14
  },
  "comparison": {
    "mode": "example_string",
    "previousFrom": "example_string",
    "previousTo": "example_string",
    "incomingUsdChangePercent": 3.14,
    "outgoingUsdChangePercent": 3.14,
    "grossTurnoverUsdChangePercent": 3.14,
    "operationsCountChangePercent": 3.14,
    "averageOperationUsdChangePercent": 3.14
  }
}
GET
/api/v1/vaults/{code}/reports/transaction_activity
GET
Base URLstring

Target server for requests. Edit to use your own host.

Bearer Token
Bearer Tokenstring
Required

Session token. Mobile/services. The web uses a cookie.

Session token. Mobile/services. The web uses a cookie.
API Key (cookie: session_token)
session_tokenstring
Required

API key (sent in cookie)

path
codestring
Required

Unique Vault code (slug)

query
dateBasisstring
Options: createdAt, blockchainAt, confirmedAt
query
groupBystring
Options: day, week, month
query
categoryKeysstring

Configurable category keys (CSV)

query
categoryFieldstring

Filter by a category field VALUE: key:value, multiple conditions separated by commas, multiple values for one key separated by |. Example: ticker:EUR|USD,settlement:bank means "currency is EUR or USD AND settlement is by bank transfer." Conditions are checked against a SINGLE category assignment (an operation can have several). Values are compared as strings in canonical form (the number 84.1 with scale=2 is "84.10"). Works in ALL reports

query
includeInternalstring
Options: true, false
query
counterpartyClassificationstring
Options: current, historical
query
folderClassificationstring
Options: current, historical
query
comparisonstring
Options: none, previous_period, previous_year
query
userIdstring

admin: narrow down to a user

query
breakdownBystring

An additional breakdown. owner breaks down by the OWNER of our address: it answers "how much of the total volume is mine, and how much comes from addresses shared with me." Meaningful together with includeShared=true; without it, the breakdown collapses into a single row. It appears as a byAddressOwner block with an isMe flag. The flag is computed relative to the caller, so the same report will break down differently for two people: each has their own "mine." NOT SUPPORTED EVERYWHERE. The parameter comes from the shared filter schema, but the byAddressOwner block appears only in reports built on the activity engine: counterparty-activity, counterparty-group-activity, transaction-activity, asset-movement, address-activity. In the others (account-statement, operations-exceptions, approval-activity, category-analytics), it's ignored: they have no per-operation selection to build the breakdown from.

Options: owner
query
includeSharedstring

true → include addresses shared with me in the scope (D6, opt-in)

Options: true, false
Request Preview
Response

Response will appear here after sending the request

Authentication

header
Authorizationstring
Required

Bearer token. Session token. Mobile/services. The web uses a cookie.

path
parameterstring
Required

API Key for authentication. Provide your API key in the cookie.

Path Parameters

codestring
Required

Unique Vault code (slug)

Example:
demo_vault

Query Parameters

dateBasisstring
Allowed values:createdAtblockchainAtconfirmedAt
groupBystring
Allowed values:dayweekmonth
categoryKeysstring

Configurable category keys (CSV)

categoryFieldstring

Filter by a category field VALUE: key:value, multiple conditions separated by commas, multiple values for one key separated by |. Example: ticker:EUR|USD,settlement:bank means "currency is EUR or USD AND settlement is by bank transfer." Conditions are checked against a SINGLE category assignment (an operation can have several). Values are compared as strings in canonical form (the number 84.1 with scale=2 is "84.10"). Works in ALL reports

Example:
ticker:EUR|USD,settlement:bank
includeInternalstring
Allowed values:truefalse
counterpartyClassificationstring
Allowed values:currenthistorical
folderClassificationstring
Allowed values:currenthistorical
comparisonstring
Allowed values:noneprevious_periodprevious_year
userIdstring

admin: narrow down to a user

breakdownBystring

An additional breakdown. owner breaks down by the OWNER of our address: it answers "how much of the total volume is mine, and how much comes from addresses shared with me." Meaningful together with includeShared=true; without it, the breakdown collapses into a single row.

It appears as a byAddressOwner block with an isMe flag. The flag is computed relative to the caller, so the same report will break down differently for two people: each has their own "mine."

NOT SUPPORTED EVERYWHERE. The parameter comes from the shared filter schema, but the byAddressOwner block appears only in reports built on the activity engine: counterparty-activity, counterparty-group-activity, transaction-activity, asset-movement, address-activity. In the others (account-statement, operations-exceptions, approval-activity, category-analytics), it's ignored: they have no per-operation selection to build the breakdown from.

Allowed values:owner
includeSharedstring

true → include addresses shared with me in the scope (D6, opt-in)

Allowed values:truefalse

Responses

reportobject
Required
summaryobject
byAssetarray
byCounterpartyarray
byOwnAddressarray
byStatusarray
byCategoryarray
byAddressOwnerarray
timelinearray
approvalsobject
observationsarray
dataQualityobject
comparisonstring