# @iota/iota-sdk

## 1.12.0

### Minor Changes

-   d2ed95a: Mark all Account Abstraction (Move Authenticator) APIs as experimental.
-   1a2b37f: Use bcs.byteVector and bcs.bytes instead of bcs.vector(bcs.u8()) and bcs.fixedArray(n,
    bcs.u8()) to improve performance
-   66d0c0d: New `requestIotaFromFaucet` with built-in request tracking.
-   bd1fa0b: Removed deprecated APIs. (Transaction.blockData, Transaction.serialize(),
    TransactionData.gasConfig)
-   1a2b37f: Add TransactionData.insertTransaction method
-   3f80310: Fix the default ordering of queryEvents() to be ascending.
-   999224b: Remove unused metadata headers passed in the client json rpc transport
-   7849d0e: Support MoveAuthenticator versioning.
-   0be1d8d: Add a new RequestInspector API to look into requests and responses of an IotaClient
-   46171b1: Remove getAppsBackend function

### Patch Changes

-   fe97265: Adds `deriveObjectID` helper to calculate `derived_object` addresses.
-   379dd4b: Fix remaining balance check in ParallelExecutor
-   1a2b37f: fix safeEnum type inference
-   9c6137c: Add `FormatBalanceOptions` interface to `formatBalance` function to support custom
    BigNumber formatting options. This enables disabling group separators for analytics and data
    processing use cases where plain numeric strings are required.
-   331b7ab: Refreshed the README with up to date APIs, examples and more.
-   adea573: Enable declarationMap in TS packages
-   2a9a1df: Bring back the sdk type header in the ts-sdk http transport client
-   1a2b37f: Add IOTA_RANDOM_OBJECT_ID constant
-   f3d9079: Fix tx.pure return type when used with a typename
-   235a8d7: Deduplicate storageCost in ParallelTransactionExecutor
-   9d88461: Fix system objects to avoid unnecessary network calls

    -   Clock (0x6) and Random (0x8) now return fully resolved SharedObject references with mutable:
        false
    -   System (0x5) and DenyList (0x403) now accept optional `mutable` parameter:
        -   When undefined, returns UnresolvedObject with initialSharedVersion for backward
            compatibility
        -   When explicitly set, returns SharedObjectRef with the specified mutability
    -   Improves transaction building performance by avoiding unnecessary network lookups

-   Updated dependencies [1a2b37f]
-   Updated dependencies [adea573]
-   Updated dependencies [c74bcc2]
-   Updated dependencies [045acb2]
-   Updated dependencies [045acb2]
-   Updated dependencies [bd1fa0b]
-   Updated dependencies [1a2b37f]
-   Updated dependencies [045acb2]
-   Updated dependencies [045acb2]
    -   @iota/bcs@1.6.0

## 1.11.0

### Minor Changes

-   43cfa2b: Improve typing for the return type of splitCoins and update the splitCoins result type
    to have a concrete size
-   3bcb711: Add a new `address` options on methods that verify signatures that ensures the
    signature is valid for the provided address. Add a new `publicKey.verifyAddress` method on
    PublicKey instances.
-   0296e7d: add abort signals to all IotaClient methods
-   b903c0a: expose `pureBcsSchemaFromTypeName` utility
-   19c174f: Add enum pagination support to getNormalizedMoveModule and fix type generator for
    arrays without items
-   8bd4574: Sync types with the new score integration.
-   7a61cb5: Change the default value of `waitMode` in `waitForTransaction` to be `checkpoint`.
-   d5923e9: Add the `MoveAuthenticator` variant to the `GenericSignature` to allow the
    authentication of Abstract Accounts.
-   6fc20db: Sync with the renaming of `callArgs` field to `arguments` in the `view` JSON-RPC method
    params.
-   2164846: Remove dependency on tweetnacl and replace with @noble/curves/ed25519
-   924bf18: Support and helpers for the Move Authenticator (Also known as 'Account Abstraction').
-   21a4820: Parallel Executor: add additional signatures
-   ffbb296: Update the GraphQL queries to support new fields
-   088c577: expose isArgument util from @iota/iota-sdk/transactions
-   0cc417d: replace bs58 and bech32 packages with @scure/base

### Patch Changes

-   54c7803: Update @types/node to v24.
-   f5a4569: Fix transaction construction for royalty_rule::fee_amount
-   5fc7e20: Add execution error to response.
-   f2b8160: fix graphql transport error
-   abcdd2f: add transactionBlocksByDigests tests
-   b72bfd2: Remove duplicate applyEffects in serial transaction executor
-   38657f6: Fix coinWithBalance with a 0 balance when using a gas coin
-   7fa1fde: add getSigningDigest and signingDigest methods
-   4dc4b84: fix bug in object cache's applyEffects method that doesn't correctly await cache
    deletes
-   58891a9: Allow coinWithBalance return value to be used in multiple commands
-   Updated dependencies [94b38e1]
-   Updated dependencies [f445f37]
-   Updated dependencies [0cc417d]
    -   @iota/bcs@1.5.0

## 1.10.1

### Patch Changes

-   1925bea: Bump with no changes to fix NPM versions

## 1.10.0

### Minor Changes

-   8e66840: Deprecate `AddressTransactionBlockRelationship.Sign`
-   b0d8be1: Support new `TransactionBlocksByDigests` GraphQL query.

### Patch Changes

-   4008cc6: Update validot to v1.2.0.

## 1.9.0

### Minor Changes

-   ae1385d: Update dependencies.

### Patch Changes

-   Updated dependencies [ae1385d]
    -   @iota/bcs@1.4.0

## 1.8.0

### Minor Changes

-   f4cc8e8: Add a `maxTransactionPayloadSize` service-configuration parameter for GraphQL schema
    introspection.
-   933496c: Changed type of "iotaTotalSupply" to BigInt in the GraphQL queries
-   0a4525d: Allow passing `rpId` to recover passkey accounts
-   ec99569: New subscription API types.

### Patch Changes

-   00f4a39: Fix some broken links in the README
-   Updated dependencies [147c97e]
    -   @iota/bcs@1.3.0

## 1.7.0

### Minor Changes

-   b152861: Fix the TS SDK bundling with Bun
-   a0b225d: Support the new node method `isTransactionIndexedOnNode`
-   fea81ab: Typo fixes.
-   4c68076: Sync with Node changes.
-   03e8b9b: Update move types
-   92dd15e: Add a new `waitMode` in `waitForTransaction`
-   2a5f065: Add support for the new `view` method in both JSON RPC and GraphQL transports.

### Patch Changes

-   c12d044: Internal simplification of the codegen
-   f3beb1e: Allow passing credential IDs to PasskeyKeypair methods

## 1.6.1

### Patch Changes

-   3244c29: Rename `parseIotaToNanos` util back to `parseAmount`

## 1.6.0

### Minor Changes

-   bd17ba9: Add support for `IotaMoveNormalizedEnum` type

### Patch Changes

-   c5543f0: Add suggestedGasPrice optional field to dryRunTransaction response
-   0accdb0: Add util to parse iota amount

## 1.5.0

### Minor Changes

-   61b0944: Added support for WrappedOrDeletedObject in TransactionBlockFilter
-   f008db3: Updated hex, base64, and base58 utility names for better consistency

    All existing methods will continue to work, but the following methods have been deprecated and
    replaced with methods with improved names:

    -   `toHEX` -> `toHex`
    -   `fromHEX` -> `fromHex`
    -   `toB64` -> `toBase64`
    -   `fromB64` -> `fromBase64`
    -   `toB58` -> `toBase58`
    -   `fromB58` -> `fromBase58`

-   5bbafa8: add deriveDynamicFieldID util
-   28ce666: Add new errors to ExecutionFailureStatus enum
-   f008db3: support Bech32 secrets in the Keypair.fromSecretKey methods
-   464c15a: Sync the APIs with the "Domain" -> "Name" rename of IotaNames

### Patch Changes

-   40576ed: Add balance formatting utils
-   966f83c: Add data to result of executeTransaction methods on Transaction executor classes
-   733df30: Add tx.object.option for creatnig object options in transaction builder
-   13ca264: Allow 0 amounts with `coinWithBalance` intent when the wallet has no coin objects of
    the required type.
-   c855f8c: Require name to register global transaction plugins
-   Updated dependencies [f008db3]
    -   @iota/bcs@1.2.0

## 1.4.0

### Minor Changes

-   f04033d: Export Owner BCS type
-   ecea738: Improved logic around `fallbackMethods` in graphql-transport Introduced
    `unsupportedMethods` in graphql-transport Improved IotaClient compatibility with
    graphql-transport

### Patch Changes

-   59342b2: Renamed all instances of 'domain' to 'name' for IOTA-Names.
-   Updated dependencies [f04033d]
-   Updated dependencies [f04033d]
-   Updated dependencies [f04033d]
    -   @iota/bcs@1.1.0

## 1.3.0

### Minor Changes

-   6051799: Add support for passkeys
-   c837b79: Removed support for iota-bridge

### Patch Changes

-   5db9797: Add an util to trim addresses
-   c4c6d9a: Export `getGraphQLUrl` correctly

## 1.2.0

### Minor Changes

-   53d5058: Added iota names rpc methods to IotaClient and also GraphQL queries.

## 1.1.0

### Minor Changes

-   1128809: Add `getGraphQLUrl` shorthand to quickly get the graphql endpoint of the given network

### Patch Changes

-   acc502a: Add IOTA Names interfaces

## 1.0.1

### Patch Changes

-   26cf13b: Include mainnet into default network envs

## 1.0.0

### Major Changes

-   daa968f: Initial release of `@iota/bcs` and `@iota/iota-sdk`

### Minor Changes

-   864fd32: Rename `getLatestIotaSystemState` to `getLatestIotaSystemStateV1` and add a new
    backwards-compatible and future-proof `getLatestIotaSystemState` method that dynamically calls
    ``getLatestIotaSystemStateV1`or`getLatestIotaSystemStateV2` based on the protocol version of the
    node.

### Patch Changes

-   f4d75c7: Add graphql field in the network configuration.
-   Updated dependencies [daa968f]
    -   @iota/bcs@1.0.0

## 0.7.0

### Minor Changes

-   42898f1: Add support for getDynamicFieldObjectV2
-   bdb736e: Update clients after RPC updates to base64
-   65a0900: Add circulating supply support to the iota client

### Patch Changes

-   1ad39f9: Update dependencies

## 0.6.0

### Minor Changes

-   1a4505b: Update clients to support committee selection protocol changes
-   e629a39: Aligns the Typescript SDK for the "fixed gas price" protocol changes:

    -   Add typing support for IotaChangeEpochV2 (computationCharge, computationChargeBurned).
    -   Add Typescript SDK client support for versioned IotaSystemStateSummary.

-   2717145: Update `TransactionKind` and `TransactionKindIn` filter types from `string` to
    `IotaTransactionKind` type according to infra updates
-   e213517: Make `getChainIdentifier` use the Node RPC.

### Patch Changes

-   3fe0747: Enhance normalizeIotaAddress utility with optional validation

## 0.5.0

### Minor Changes

-   6e00091: Exposed maxSizeBytes in BuildTransactionOptions interface: Added the maxSizeBytes
    option to the BuildTransactionOptions interface to allow specifying the maximum size of the
    transaction in bytes during the build process.

## 0.4.1

### Patch Changes

-   5214d28: Update documentation urls

## 0.4.0

### Minor Changes

-   9864dcb: Add default royalty, kiosk lock, floor price & personal kiosk rules package ids to
    testnet network

## 0.3.1

### Patch Changes

-   220fa7a: First public release.
-   Updated dependencies [220fa7a]
    -   @iota/bcs@0.2.1

## 0.3.0

### Minor Changes

-   6eabd18: Changes for compatibility with the node, simplification of exposed APIs and general
    improvements.

### Patch Changes

-   Updated dependencies [6eabd18]
    -   @iota/bcs@0.2.0

## 0.2.0

### Minor Changes

-   a3c1937: Deprecate IOTA Name Service

### Patch Changes

-   d423314: Sync API changes:

    -   restore extended api metrics endpoints
    -   remove nameservice endpoints

-   b91a3d5: Update auto-generated files to latest IotaGenesisTransaction event updates

## 0.1.1

### Patch Changes

-   4a4ba5a: Make packages private

## 0.1.0

### Minor Changes

-   249a7d0: First release

### Patch Changes

-   Updated dependencies [249a7d0]
    -   @iota/bcs@0.1.0
