Skip to main content
Version: v1.7.0

Submit an API request

The Maestro Blockchain Indexer API enables applications to retrieve on-chain data and submit transactions to the Cardano network. You can learn more about the API here.

  • The guide on this page illustrates communicating with the Pre-Production Cardano Network.

Example: Transaction Output by Reference

The endpoint /transactions/{tx_hash}/outputs/{index}/txo can be used to retrieve detailed information about a transaction and its output UTxO. To use this endpoint you must specify the following:

For this example, we will use:

  • tx_hash: 9907c1bcab96889368d975ec1964e2fedfef22ce4a0e367bf9cb621b9f0dcb4a
  • index: 0
  • with_cbor: true

Using the api-key, query the endpoint with cURL:

curl -X GET \
-H "api-key: <your_project_api_key>" \
-H 'Accept: application/json' \

Which returns:

"tx_hash": "9907c1bcab96889368d975ec1964e2fedfef22ce4a0e367bf9cb621b9f0dcb4a",
"index": 0,
"assets": [
"unit": "lovelace",
"quantity": 7280082022
"unit": "34250edd1e9836f5378702fbf9416b709bc140e04f668cc355208518#4154414441636f696e",
"quantity": 10824
"address": "addr_test1vpfwv0ezc5g8a4mkku8hhy3y3vp92t7s3ul8g778g5yegsgalc6gc",
"datum": {
"type": "inline",
"hash": "432cb73420839fb517533c365d7ec125c457ea4ba5c0349be81be6796d52ef3b",
"bytes": "1a00278530",
"json": {
"int": 2590000
"reference_script": {
"type": "plutusv2",
"hash": "3a888d65f16790950a72daee1f63aa05add6d268434107cfa5b67712",
"bytes": "480100002221200101",
"json": null

JSON payload details

  • tx_hash: Transaction hash
  • index: Transaction index
  • assets unit: Native asset reference, either hex(policy_id)#hex(asset_name) or lovelace
  • assets quantity: Native asset amount
  • address: Address which controls the UTxO
  • datum type: Either inline datum or datum hash
  • datum hash: Datum hash
  • datum bytes: Hex encoded datum CBOR bytes(null if datum type is hash and corresponding datum bytes have not been seen on-chain)
  • datum json: Datum json value
  • reference_script type: Either native, plutusv1, or plutusv2
  • reference_script hash: Script hash
  • reference_script bytes: Script bytes (null if native script)
  • reference_script json: Script json value

Where to next?