cardano-foundation
cardano-rosetta
TypeScript

An implementation of Rosetta for Cardano

Last updated May 2, 2026
97
Stars
49
Forks
61
Issues
0
Stars/day
Attention Score
81
Language breakdown
TypeScript 95.3%
Shell 1.9%
Nix 1.7%
Dockerfile 0.8%
JavaScript 0.4%
Files click to expand
README
[!WARNING]
>
This Repository is no longer maintained and not supported. Please refer to the new Rosetta-Java Repository here

Cardano Rosetta

[![CI][imgsrcCI]][workflowCI] [![Nightly][imgsrcNightly]][workflowNightly]

A multi-platform implementation of [Rosetta] for [Cardano], targeting the version defined in the [OpenApi schema]. Skip to run if wishing to use a pre-built image from the [Docker Hub repository].

Build

Build [from anywhere], optionally specifying a [network] name other than mainnet as a build argument, and accessing cached build layers to reduce the initialization time. You can also build with local source by replacing the GitHub link with .

Supported Architectures

  • linux/amd64
  • linux/arm64
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKITINLINECACHE=1 \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0 \
  .

preprod

DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKITINLINECACHE=1 \
  --build-arg NETWORK=preprod \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preprod \
  .

preview

DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKITINLINECACHE=1 \
  --build-arg NETWORK=preview \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preview \
  .

Sanchonet

DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKITINLINECACHE=1 \
  --build-arg NETWORK=sanchonet \
  --build-arg CARDANODBSYNC_VERSION=13.6.0.1 \
  --build-arg DBSYNCTAG=sanch-5-1-0
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-sanchonet \
  .

Run

Run the locally or pre-built images and mount a single volume into the [standard storage location], map the server port to the host, and allocate a suitably-sized /dev/shm. See the complete [Docker run reference] for full control.

mainnet

docker run \
  --name cardano-rosetta \
  -p 8080:8080 \
  -v cardano-rosetta:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0

preprod

docker run \
  --name cardano-rosetta-preprod \
  -p 8081:8080 \
  -v cardano-rosetta-preprod:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preprod

preview

docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preview

Sanchonet

docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-sanchonet

:informationsource: A trusted DB snapshot can be used to speed up the initial sync, however the internal instance of cardano-node must be synced past the snapshot point for it to be applied. This can be achieved by observing logs emitted from cardano-node indicating it's close to the network tip, before then following the instructions in the Upgrading section._

Configuration

Set ENVs for optional runtime configuration

-e MODE=offline

MODE

See Rosetta docs for information on [modes]
  • online - default
  • offline

DEFAULTRELATIVETTL

Specify the TTL without needing to access an online method. Default: 1000

LOGGERMINSEVERITY

  • trace
  • debug
  • info - default
  • warn
  • error
  • fatal

PAGE_SIZE

Default: 25

Upgrading

As per the release notes, you may be required to refresh the state managed by cardano-db-sync. This can be achieved without requiring a network re-sync using one of the two following approached:

1. Re-sync From Genesis

A trustless approach to rebuild the DB, by syncing from genesis at the cost of an extended sync duration:
docker stop cardano-rosetta && \
docker rm cardano-rosetta && \
docker run --rm -v cardano-rosetta:/data ubuntu rm -rf /data/postgresql /data/db-sync
... then start a container as per usual. Sync progress will be logged by the new container.

2. Apply a Trusted cardano-db-sync Snapshot

Run the build command with the addition of an argument providing the most recent weekly snapshot link (https://update-cardano-mainnet.iohk.io/cardano-db-sync/index.html) and set is as 'SNAPSHOT_URL' below. For example:
Build
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKITINLINECACHE=1 \
  --build-arg SNAPSHOTURL=https://update-cardano-mainnet.iohk.io/cardano-db-sync/13.6/db-sync-snapshot-schema-13.6-block-11090788-x8664.tgz \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-apply-snapshot \
  https://github.com/cardanofoundation/cardano-rosetta.git#2.5.0

Documentation

| Link | Audience | | --- | --- | | [Construction API Documentation] | Users of the Cardano Rosetta Construction API | | [Data API Documentation] | Users of the Cardano Rosetta Data API | | [Cardano Rosetta Docs] | Cardano Rosetta specific documentation | | [Developer] | Core or external developers of cardano-rosetta-server | | [Maintainer] | Solution maintainer | | [QA] | Quality Assurance Engineers |


[imgsrcCI]: https://github.com/cardano-foundation/cardano-rosetta/workflows/CI/badge.svg [workflow_CI]: https://github.com/cardano-foundation/cardano-rosetta/actions?query=workflow%3ACI [imgsrcNightly]: https://github.com/cardano-foundation/cardano-rosetta/workflows/Nightly/badge.svg [workflow_Nightly]: https://github.com/cardano-foundation/cardano-rosetta/actions?query=workflow%3ANightly [Rosetta]: https://www.rosetta-api.org/docs/welcome.html [Cardano]: https://cardano.org/ [OpenApi schema]: cardano-rosetta-server/src/server/openApi.json#L4 [Docker Hub repository]: https://hub.docker.com/r/cardanofoundation/cardano-rosetta/tags?page=1&ordering=last_updated [from anywhere]: https://www.rosetta-api.org/docs/node_deployment.html#build-anywhere [network]: config/network [standard storage location]: https://www.rosetta-api.org/docs/standardstoragelocation.html [Docker run reference]: https://docs.docker.com/engine/reference/run/ [modes]: https://www.rosetta-api.org/docs/node_deployment.html#multiple-modes [docs]: cardano-rosetta-server/README.md [standard build instructions]: #build [Construction API Documentation]: https://www.rosetta-api.org/docs/constructionapiintroduction.html [Data API Documentation]: https://www.rosetta-api.org/docs/dataapiintroduction.html [Cardano Rosetta Docs]: ./docs [Developer]: cardano-rosetta-server/README.md [Maintainer]: docs/MAINTAINER.md [QA]: docs/QA.md

© 2026 GitRepoTrend · cardano-foundation/cardano-rosetta · Updated daily from GitHub