SettleMint SDK
✨ https://settlemint.com ✨
Integrate SettleMint into your application with ease.
Table of Contents
About
The SettleMint Blockscout SDK provides a seamless way to interact with Blockscout APIs for blockchain data exploration and analysis. It enables you to easily query transaction data, blocks, addresses, smart contracts and more from your SettleMint-powered blockchain networks.
API Reference
Functions
createBlockscoutClient()
createBlockscoutClient<Setup>(options, clientOptions?): object
Defined in: sdk/blockscout/src/blockscout.ts:76
Creates a Blockscout GraphQL client with proper type safety using gql.tada
Type Parameters
Setup extends AbstractSetupSchema |
Parameters
options | { accessToken?: string; instance: string; } | Configuration options for the client |
options.accessToken? | string | - |
options.instance? | string | - |
clientOptions? | RequestConfig | Optional GraphQL client configuration options |
Returns
object
An object containing the GraphQL client and initialized gql.tada function
Throws
Will throw an error if the options fail validation
Example
import { createBlockscoutClient } from '@settlemint/sdk-blockscout';
import type { introspection } from "@schemas/blockscout-env";
import { createLogger, requestLogger } from '@settlemint/sdk-utils/logging';
const logger = createLogger();
const { client, graphql } = createBlockscoutClient<{
introspection: introspection;
disableMasking: true;
scalars: {
AddressHash: string;
Data: string;
DateTime: string;
Decimal: string;
FullHash: string;
Json: string;
NonceHash: string;
Wei: string;
};
}>({
instance: process.env.SETTLEMINT_BLOCKSCOUT_ENDPOINT,
accessToken: process.env.SETTLEMINT_ACCESS_TOKEN
}, {
fetch: requestLogger(logger, "blockscout", fetch) as typeof fetch,
});
const query = graphql(`
query GetTransaction($hash: String!) {
transaction(hash: $hash) {
hash
blockNumber
value
gasUsed
}
}
`);
const result = await client.request(query, {
hash: "0x123abc..."
});
Type Aliases
ClientOptions
ClientOptions = object
Defined in: sdk/blockscout/src/blockscout.ts:24
Type definition for client options derived from the ClientOptionsSchema
Type Declaration
RequestConfig
RequestConfig = ConstructorParameters<typeof GraphQLClient>[1]
Defined in: sdk/blockscout/src/blockscout.ts:11
Type definition for GraphQL client configuration options
Variables
ClientOptionsSchema
const ClientOptionsSchema: ZodObject<ClientOptions>
Defined in: sdk/blockscout/src/blockscout.ts:16
Schema for validating client options for the Blockscout client.
Contributing
We welcome contributions from the community! Please check out our Contributing guide to learn how you can help improve the SettleMint SDK through bug reports, feature requests, documentation updates, or code contributions.
License
The SettleMint SDK is released under the FSL Software License. See the LICENSE file for more details.