Search

Search via DB

Filter ledgers, balances, transactions, and identities with the Python SDK.

POST/{collection}/filter

Use blnk.search.filter to filter records in a collection.

Call the method

response = blnk.search.filter(
  {
    "filters": [
      {
        "field": "status",
        "operator": "eq",
        "value": "APPLIED",
      },
    ],
    "logical_operator": "and",
    "sort_by": "created_at",
    "sort_order": "desc",
    "include_count": True,
    "limit": 20,
    "offset": 0,
  },
  "transactions",
)
FieldTypeDescription
filterslist[dict]Array of filter conditions, each with a field, operator, and a value or values.
logical_operatorstrCombine filters with and or or. Defaults to and.
sort_bystrField to sort by. Defaults to created_at.
sort_orderstrSort direction, asc or desc. Defaults to desc.
include_countboolReturn total_count in the response. Defaults to False.
limitnumberMaximum records to return. Defaults to 20, max 100.
offsetnumberRecords to skip for pagination. Defaults to 0.
collectionstrCollection to filter: ledgers, transactions, balances, or identities.

Use the filtered results

Read response.data["data"] for matching records. Use total_count with limit and offset to paginate when include_count is True.

Response

{
  "data": [
    {
      "transaction_id": "txn_abc123",
      "amount": 15000,
      "currency": "USD",
      "status": "APPLIED",
      "source": "bln_source123",
      "destination": "bln_dest456",
      "created_at": "2024-01-15T10:30:00Z"
    }
  ],
  "total_count": 150
}
FieldTypeDescription
datalist[dict]Array of matching records. Shape varies by collection.
total_countnumberTotal matching records. Only present when include_count is True.