Skip to content

Releases: radixdlt/babylon-gateway

RCnet v2 (Revision 1)

26 Jul 15:58
02b980c
Compare
Choose a tag to compare

Overview

This release brings the Gateway compatible with RCnet v2 phase 2 of the Radix Babylon Network.

Note to Integrators

Please note that the Babylon Core API on the Node is more powerful than on Olympia.

Integrators looking to prepare for the Radix Babylon launch should start by considering if running their own node and using the Core API would work instead of running a Gateway and using the Gateway API.

Please see the guide for integrators here.

Running just a node is simpler than running a node and Gateway, and the Core API has a "long term support" section of the API, designed for tracking fungible balances and accounts, which is guaranteed to be compatible with mainnet launch - enabling integrators to prepare for mainnet launch immediately.

Updating your Gateway

If running your own Gateway, as part of updating to this network, your Gateway database will need to be wiped, your Gateway updated, and then set to read from RCnet v2 Phase 2 (Ansharnet) node.

Known Issues

The total supply, total minted and total burned figure for a resource is not accurate. This will be fixed for RCnet v3.

RCNet v1 to RCNet v2 Migration Guide

What’s New?

  • Some properties are now annotated with an is_locked field indicating whether the value is locked or is still able to be updated.

  • Strongly-typed metadata values. Each metadata property is now represented as raw SBOR value and one of sixteen possible typed values, as per the Entity Metadata docs

  • Additional entity details are returned from the /state/entity/details endpoint:

    • Entity Role Assignments "access rules"
      • NOTE: Expect minor field renames at RCnet v3, to better align with the new role abstractions.
    • Total supply alongside overall number of minted and burned tokens for resources.
      • WARNING: Total supply is not currently accurate. This will be fixed at RCnet v3.
    • Package code, blueprints, schemas and royalty vaults
  • New opt-in flags are supported for /state/entity/details endpoint:

    • explicit_metadata - allows to specify a collection of metadata keys you’d like to receive in the response,
    • ancestor_identities - to include parental entity identifiers,
    • component_royalty_vault_valance and package_royalty_vault_balance - to include royalty vaults and their respective balances where applicable,
    • non_fungible_include_nfids - to include a first chunk of NFIDs of a returned NF vaults.
  • New opt-in flags supported for /stream/transactions endpoint:

    • raw_hex to include raw bytes of a TX,
    • receipt_state_changes to include low-level state changes,
    • receipt_fee_sumary to include TX fees,
    • receipt_events to include low-level events,
    • affected_global_entities to include list of entities affected by given TX,
  • Additional transaction details in /stream/transactions endpoint: epoch, round, round_timestamp.

  • New filters in /stream/transactions endpoint to limit search results:

    • manifest_accounts_withdrawn_from_filter - filter for TXs where given accounts have been withdrawn from,
    • manifest_accounts_deposited_into_filter - filter for TXs where given accounts have been deposited into,
    • manifest_resources_filter - filter for TXs where given resources have been used,
    • affected_global_entities_filter - filter for TXs where given entities have had internal updates,
    • events_filter - filter for TXs where the given event occurred (only Vault Deposit/Withdrawal events are currently supported)
  • More validator details in /state/validators/list endpoint: state_vault, pending_xrd_withdraw_vault, locked_owner_stake_unit_vault, pending_owner_stake_unit_unlock_vault

Breaking Changes

  • All addresses (including internal addresses) are now represented with a single Address type.
  • No more as_string and as_string_collection metadata representations - they’ve been replaced with strongly-typed models.
  • Minor property renames to reflect changes in upstream engine and Core APIs

Full changelog

Full technical changelog is here.

RCnet-V1.1

27 Jun 06:45
60c8637
Compare
Choose a tag to compare

Overview

This release brings the Gateway compatible with the first release candidate of the Radix Babylon Network.

Integrators

Please note that the Babylon Core API on the Node is more powerful than on Olympia.

Integrators looking to prepare for the Radix Babylon launch should start by considering if running their own node and using the Core API would work instead of running a Gateway and using the Gateway API.

Running just a node is simpler than running a node and Gateway, and the Core API has a "long term support" section of the API, designed for tracking fungible balances and accounts, which is guaranteed to be compatible with mainnet launch - enabling integrators to prepare for mainnet launch immediately.

Key changes

Overview of Gateway changes since RCnet-V1.0:

  • add binaries to Github Release
  • fix DockerHub Image Tags

Overview of Gateway changes since Betanet-V2:

  • /entity/overview and /entity/details endpoints replaced with single /state/entity/details.
  • Fungible and non-fungible resources are now ordered by the most recently updated.
  • /transaction/recent endpoint replaced with /stream/transactions returning user and non-user transactions.
  • limit request parameter has been renamed to limit_per_page.
  • All enum values use PascalCase naming.
  • /gateway/information replaced with two separate endpoints /status/gateway-status and /status/network-configuration
  • Added new configuration section CoreApiIntegration where you can configure integration with core API. For now only SubmitTransactionTimeout setting is supported.
  • /stake/validator/list rework, added current stake value.
  • /entity/resources merged into /state/entity/details endpoint
  • new paginable endpoints /state/entity/page/{x} for metadata, fungibles, fungible-vaults, non-fungibles, non-fungible-vaults and non-fungible-vault/ids. Cursors returned from state/entity/details can be later used to query for next pages in specific endpoints.
  • /transaction/committed-details endpoint operates on intent_hash_hex only now

RCnet-V1.0

31 Mar 16:14
a8da752
Compare
Choose a tag to compare

Overview

This release brings the Gateway compatible with the first release candidate of the Radix Babylon Network.

Integrators

Please note that the Babylon Core API on the Node is more powerful than on Olympia.

Integrators looking to prepare for the Radix Babylon launch should start by considering if running their own node and using the Core API would work instead of running a Gateway and using the Gateway API.

Running just a node is simpler than running a node and Gateway, and the Core API has a "long term support" section of the API, designed for tracking fungible balances and accounts, which is guaranteed to be compatible with mainnet launch - enabling integrators to prepare for mainnet launch immediately.

Key changes

Overview of Gateway changes since Betanet-V2:

  • /entity/overview and /entity/details endpoints replaced with single /state/entity/details.
  • Fungible and non-fungible resources are now ordered by the most recently updated.
  • /transaction/recent endpoint replaced with /stream/transactions returning user and non-user transactions.
  • limit request parameter has been renamed to limit_per_page.
  • All enum values use PascalCase naming.
  • /gateway/information replaced with two separate endpoints /status/gateway-status and /status/network-configuration
  • Added new configuration section CoreApiIntegration where you can configure integration with core API. For now only SubmitTransactionTimeout setting is supported.
  • /stake/validator/list rework, added current stake value.
  • /entity/resources merged into /state/entity/details endpoint
  • new paginable endpoints /state/entity/page/{x} for metadata, fungibles, fungible-vaults, non-fungibles, non-fungible-vaults and non-fungible-vault/ids. Cursors returned from state/entity/details can be later used to query for next pages in specific endpoints.
  • /transaction/committed-details endpoint operates on intent_hash_hex only now

Betanet-V2

14 Feb 17:35
87f7371
Compare
Choose a tag to compare
  • Added /state/validators/list endpoint: returns paginable collection of all validators ever observed; validators that are part of so called active-set (i.e. participate in consensus for current/requested epoch) are decorated with some extra information like their public_key and stake.
  • NonFungibleIdTypes u32 and u64 have been replaced with single Number.
  • TransactionStatusRequest no longer supports at_state_version property.
  • EntityDetailsResponse.details property is now optional.
  • /entity/details endpoint supports all entities with global address now.

Fixes for the following issues:

  • #96 - "Paging through the NonFungibleIds of a resource does not work properly" thank you backyard-coder!
  • Incorrect calculation of balances when there are multiple vaults in a component. (Note - NFIds are still incorrectly tracked if spread across multiple vaults - this will be fixed as part of a schema overhaul)
  • Fungible resource metadata is updated properly