diff --git a/.stats.yml b/.stats.yml
index d92431a..eb54141 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,2 +1,2 @@
configured_endpoints: 19
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/new%2Fblockaid-a8d116e345ec36054b1a8cc6fa98564ede39989a9b9ce1383f9e37738dcf33ff.yml
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/new%2Fblockaid-ea8d982a096c639a061ee5f1a2b05747ff416b95357d92f56d01e6c537098066.yml
diff --git a/api.md b/api.md
index 90cbe50..bb51908 100644
--- a/api.md
+++ b/api.md
@@ -176,6 +176,7 @@ Types:
- StarknetErc20Diff
- StarknetErc721Details
- StarknetErc721Diff
+- StarknetTransactionScanRequest
- StarknetTransactionScanResponse
## Transaction
diff --git a/src/index.ts b/src/index.ts
index 4439ff3..a8c1de7 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -96,6 +96,7 @@ import {
StarknetErc20Diff,
StarknetErc721Details,
StarknetErc721Diff,
+ StarknetTransactionScanRequest,
StarknetTransactionScanResponse,
} from './resources/starknet/starknet';
import {
@@ -436,6 +437,7 @@ export declare namespace Blockaid {
type StarknetErc20Diff as StarknetErc20Diff,
type StarknetErc721Details as StarknetErc721Details,
type StarknetErc721Diff as StarknetErc721Diff,
+ type StarknetTransactionScanRequest as StarknetTransactionScanRequest,
type StarknetTransactionScanResponse as StarknetTransactionScanResponse,
};
diff --git a/src/resources/index.ts b/src/resources/index.ts
index 8271cf8..0f478c6 100644
--- a/src/resources/index.ts
+++ b/src/resources/index.ts
@@ -83,6 +83,7 @@ export {
type StarknetErc20Diff,
type StarknetErc721Details,
type StarknetErc721Diff,
+ type StarknetTransactionScanRequest,
type StarknetTransactionScanResponse,
} from './starknet/starknet';
export {
diff --git a/src/resources/starknet/index.ts b/src/resources/starknet/index.ts
index 8ac1617..107999c 100644
--- a/src/resources/starknet/index.ts
+++ b/src/resources/starknet/index.ts
@@ -8,6 +8,7 @@ export {
type StarknetErc20Diff,
type StarknetErc721Details,
type StarknetErc721Diff,
+ type StarknetTransactionScanRequest,
type StarknetTransactionScanResponse,
} from './starknet';
export { Transaction, type TransactionScanParams } from './transaction';
diff --git a/src/resources/starknet/starknet.ts b/src/resources/starknet/starknet.ts
index fb16c57..e0b1d31 100644
--- a/src/resources/starknet/starknet.ts
+++ b/src/resources/starknet/starknet.ts
@@ -156,6 +156,196 @@ export interface StarknetErc721Diff {
summary?: string | null;
}
+export interface StarknetTransactionScanRequest {
+ account_address: string;
+
+ /**
+ * The chain name or chain ID
+ */
+ chain: 'mainnet' | 'sepolia' | 'sepolia_integration' | (string & {});
+
+ /**
+ * Metadata
+ */
+ metadata:
+ | StarknetTransactionScanRequest.StarknetWalletRequestMetadata
+ | StarknetTransactionScanRequest.StarknetInAppRequestMetadata;
+
+ transaction:
+ | StarknetTransactionScanRequest.StarknetInvokeV1TransactionSchema
+ | StarknetTransactionScanRequest.StarknetInvokeV3TransactionSchema
+ | StarknetTransactionScanRequest.StarknetDeployAccountV1TransactionSchema
+ | StarknetTransactionScanRequest.StarknetDeployAccountV3TransactionSchema;
+
+ /**
+ * Optional block number or tag context for the simulation
+ */
+ block_number?: string | null;
+
+ /**
+ * List of options to include in the response
+ *
+ * - `Options.validation`: Include Options.validation output in the response
+ *
+ * - `Options.simulation`: Include Options.simulation output in the response
+ */
+ options?: Array<'validation' | 'simulation'>;
+}
+
+export namespace StarknetTransactionScanRequest {
+ export interface StarknetWalletRequestMetadata {
+ /**
+ * Metadata for wallet requests
+ */
+ type: 'wallet';
+
+ /**
+ * URL of the dApp originating the transaction
+ */
+ url: string;
+ }
+
+ export interface StarknetInAppRequestMetadata {
+ /**
+ * Metadata for in-app requests
+ */
+ type?: 'in_app';
+ }
+
+ export interface StarknetInvokeV1TransactionSchema {
+ /**
+ * The maximum fee that the sender is willing to pay.
+ */
+ max_fee: string;
+
+ /**
+ * The nonce of the transaction.
+ */
+ nonce: string;
+
+ /**
+ * The address of the sender.
+ */
+ sender_address: string;
+
+ /**
+ * The version of the transaction.
+ */
+ version: 1;
+
+ /**
+ * The arguments that are passed to the validate and execute functions.
+ */
+ calldata?: Array;
+ }
+
+ export interface StarknetInvokeV3TransactionSchema {
+ /**
+ * The arguments that are passed to the validate and execute functions.
+ */
+ calldata: Array;
+
+ /**
+ * The id of the chain to which the transaction is sent.
+ */
+ chain_id: string;
+
+ /**
+ * The nonce of the transaction.
+ */
+ nonce: string;
+
+ /**
+ * The address of the sender.
+ */
+ sender_address: string;
+
+ /**
+ * The version of the transaction.
+ */
+ version: 3;
+
+ /**
+ * For future use. Currently this value is always empty.
+ */
+ account_deployment_data?: Array;
+
+ /**
+ * The nonce data availability mode.
+ */
+ nonce_data_availability_mode?: 0;
+
+ /**
+ * For future use. Currently this value is always empty.
+ */
+ paymaster_data?: Array;
+ }
+
+ export interface StarknetDeployAccountV1TransactionSchema {
+ /**
+ * The hash of the contract class.
+ */
+ class_hash: string;
+
+ /**
+ * The arguments that are passed to the constructor function.
+ */
+ constructor_calldata: Array;
+
+ /**
+ * The salt of the contract address.
+ */
+ contract_address_salt: string;
+
+ /**
+ * The maximum fee that the sender is willing to pay.
+ */
+ max_fee: string;
+
+ /**
+ * The nonce of the transaction.
+ */
+ nonce: string;
+
+ /**
+ * The version of the transaction.
+ */
+ version: 1;
+ }
+
+ export interface StarknetDeployAccountV3TransactionSchema {
+ /**
+ * The hash of the contract class.
+ */
+ class_hash: string;
+
+ /**
+ * The arguments that are passed to the constructor function.
+ */
+ constructor_calldata: Array;
+
+ /**
+ * The salt of the contract address.
+ */
+ contract_address_salt: string;
+
+ /**
+ * The maximum fee that the sender is willing to pay.
+ */
+ max_fee: string;
+
+ /**
+ * The nonce of the transaction.
+ */
+ nonce: string;
+
+ /**
+ * The version of the transaction.
+ */
+ version: 3;
+ }
+}
+
export interface StarknetTransactionScanResponse {
/**
* Simulation result; Only present if simulation option is included in the request
@@ -643,6 +833,7 @@ export declare namespace Starknet {
type StarknetErc20Diff as StarknetErc20Diff,
type StarknetErc721Details as StarknetErc721Details,
type StarknetErc721Diff as StarknetErc721Diff,
+ type StarknetTransactionScanRequest as StarknetTransactionScanRequest,
type StarknetTransactionScanResponse as StarknetTransactionScanResponse,
};