Search

Search via Typesense

Run full-text search across your ledger data with the Python SDK.

POST/search/{collection}

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

Call the method

response = blnk.search.search(
  {
    "q": "payment",
    "query_by": "description",
    "per_page": 20,
  },
  "transactions",
)
FieldTypeDescription
qstrSearch query text. Use * to return all records.
query_bystrComma-separated list of fields to search in.
filter_bystrFilter conditions to refine results.
sort_bystrSort order, for example created_at:desc.
pagenumberPage number, starting at 1.
per_pagenumberResults per page. Max 250, defaults to 10.
collectionstrCollection to search: ledgers, transactions, balances, or identities.

Use the search results

Read response.data["hits"] for matching documents. Each hit includes a document and optional highlights and text_match score.

Response

{
  "found": 2,
  "out_of": 232,
  "page": 1,
  "request_params": {
    "collection_name": "transactions",
    "per_page": 10,
    "q": "payment"
  },
  "search_time_ms": 2,
  "facet_counts": [],
  "search_cutoff": false,
  "hits": [
    {
      "document": {
        "id": "txn_cd728825-a6e1-4fae-9277-c3235a045ea5",
        "transaction_id": "txn_cd728825-a6e1-4fae-9277-c3235a045ea5",
        "amount": 532,
        "currency": "USD",
        "description": "Test transaction",
        "source": "bln_93fb50c2-969e-49c2-bb61-ef5ed245516e",
        "destination": "bln_20666087-1355-4736-ba04-3ba92a7542b9",
        "status": "APPLIED",
        "created_at": 1758116489
      },
      "highlights": [],
      "text_match": 578730123365711993
    }
  ]
}
FieldTypeDescription
foundnumberNumber of records matching the query.
out_ofnumberTotal records in the collection.
pagenumberCurrent page number.
search_time_msnumberTime taken to run the search, in milliseconds.
hitslist[dict]Array of results, each with a document and optional highlights and text_match.