Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/airstack-xyz/airstack-node-sdk
Airstack SDK for Node js
https://github.com/airstack-xyz/airstack-node-sdk
Last synced: about 20 hours ago
JSON representation
Airstack SDK for Node js
- Host: GitHub
- URL: https://github.com/airstack-xyz/airstack-node-sdk
- Owner: Airstack-xyz
- Created: 2023-08-01T12:32:15.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-24T14:36:09.000Z (7 months ago)
- Last Synced: 2024-08-05T10:11:06.374Z (3 months ago)
- Language: TypeScript
- Size: 211 KB
- Stars: 5
- Watchers: 7
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Airstack Node SDK
The Airstack Node SDK provides a convenient way for web developers to integrate Airstack's blockchain functionalities into their Node.js applications.
With the provided methods, you can use to easily query and fetch data from smart contracts.
## Installation
#### With NPM
```sh
npm install @airstack/node
```#### With yarn
```sh
yarn add @airstack/node
```#### With pnpm
```sh
pnpm install @airstack/node
```## Getting started
To use the SDK you will need airstack api-key, which you can find in your profile setting section in [airstack web](https://app.airstack.xyz), once you have it you can call the `init` function with the api-key.
**`init` must be called before calling fetchQuery or fetchQueryWithPagination**.
```typescript
import { init } from "@airstack/node";init("api-key");
```## fetchQuery
##### Parameters
`fetchQuery` accepts 2 parameters:
- `query` (required): A string that represents the Airstack GraphQL query to be executed.
- `variables`: An object that contains variables used in the query.`fetchQuery` returns a promise with an object, which contains the following properties:
- `data`: The response data returned by the server.
- `error`: An error object, if an error occurred during the network request.##### Example
```typescript
import { fetchQuery } from "@airstack/node";const { data, error } = await fetchQuery(query, variables);
```## fetchQueryWithPagination
##### Parameters
`fetchQueryWithPagination` take same parameters as `fetchQuery`.It returns a promise with an object, which contains the following properties:
- `data`: The response data returned by the server.
- `error`: An error object, if an error occurred during the network request.
- `hasNextPage`: A boolean that indicates whether there is a next page of data available.
- `hasPrevPage`: A boolean that indicates whether there is a previous page of data available.
- `getNextPage()`: A function that returns a next page `data`, `error`, `hasNextPage`, `hasPrevPage`, `getNextPage` and `getPrevPage`. It returns `null` if there is no next page.
- `getPrevPage()`: A function that returns previous page `data`, `error`, `hasNextPage`, `hasPrevPage`, `getNextPage` and `getPrevPage`. It returns `null` if there is no previous page.
**Note:** fetchQueryWithPagination only works with queries that has support for pagination.##### Example
```typescript
import { fetchQueryWithPagination } from "@airstack/node";const { data, error, hasNextPage, hasPrevPage, getNextPage, getPrevPage } =
await fetchQueryWithPagination(query, variables);
```