Skip to content

Add grpcurl transaction submission example to cardano-rpc README - #1371

Open
carbolymer wants to merge 1 commit into
masterfrom
mgalazyn/feature/grpcurl-submit-example
Open

carbolymer wants to merge 1 commit into
masterfrom
mgalazyn/feature/grpcurl-submit-example

Conversation

@carbolymer

@carbolymer carbolymer commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Context

The cardano-rpc README walks through read-only calls with grpcurl and buf, but it had no example of submitting a transaction, which is the first thing a user coming from cardano-submit-api looks for.
This PR adds a "Submit a transaction" subsection to the "Make your first call" section.
It shows how to turn a transaction signed with cardano-cli into a SubmitTx request and how to decode the returned reference into the usual hex transaction id.
It also notes that the transaction must be built for the node's current era, and that a rejected transaction comes back as a gRPC error carrying the ledger's reason.
The quickstart shell and the ad hoc tool line now also provide jq and xxd, which the example uses.

How to trust this PR

Documentation only, no code changes.
The submission was exercised against a throwaway three-node cardano-testnet cluster started with the gRPC HTTP listener.
The call returned a reference, the decoded reference matched the output of cardano-cli transaction txid byte for byte, the output appeared on chain, and submitting the same transaction again returned a gRPC error with the ledger's "All inputs are spent" message.
The README's pipeline differs from that run only in reading the request from stdin and in a portable base64 invocation.
To reproduce, start the cluster as the README describes, build and sign a transaction with one of the testnet's genesis UTxO keys, and run the commands from the new subsection.

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. See Running tests for more details
  • Self-reviewed the diff
  • Changelog fragment added in .changes/

@carbolymer carbolymer self-assigned this Oct 7, 2026
@carbolymer carbolymer changed the title Add transaction submission through shell example Add grpcurl transaction submission example to cardano-rpc README Oct 7, 2026
@carbolymer
carbolymer force-pushed the mgalazyn/feature/grpcurl-submit-example branch from d7f4687 to 82e7b06 Compare October 7, 2026 06:51
@carbolymer
carbolymer marked this pull request as ready for review October 7, 2026 06:51
Copilot AI balanced review requested due to automatic review settings October 7, 2026 06:51

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The documented request format and response decoding match the protobuf schema and server implementation.

Review effort: Balanced
Findings: None

What changed in this PR

Adds a practical grpcurl transaction-submission example to the cardano-rpc quickstart.

Changes:

  • Documents transaction encoding, submission, and transaction-ID decoding.
  • Adds jq and xxd to quickstart tooling.
  • Adds the required documentation changelog fragment.
File Description
cardano-rpc/​README.md Adds the grpcurl submission walkthrough.
cardano-rpc/​quickstart/​shell.nix Provides tools required by the example.
.changes/​20261007_cardano_rpc_readme_grpcurl_submit.yml Records the documentation update.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants