@safe-global/safe-gateway-typescript-sdk
TypeScript icon, indicating that this package has built-in type declarations

3.21.1 • Public • Published

Safe Gateway TypeScript SDK

npm

A TypeScript SDK for the Safe Client Gateway

📖 Type reference   |   Swagger CGW Swagger

Usage policy

NB: Safe Client Gateway isn't meant for public use. Please do not use this SDK if you're building, e.g., a Safe App.

Using the SDK

Install:

yarn add @safe-global/safe-gateway-typescript-sdk

Import:

import { getChainsConfig, type ChainListResponse } from '@safe-global/safe-gateway-typescript-sdk'

Use:

const chains = await getChainsConfig()

The SDK needs no initialization unless you want to override the base URL. You can set an alternative base URL like so:

import { setBaseUrl } from '@safe-global/safe-gateway-typescript-sdk'

// Switch the SDK to dev mode
setBaseUrl('https://safe-client.staging.5afe.dev')

The full SDK reference can be found here.

Adding an endpoint

Endpoint types are defined in src/types/gateway.ts.

Each endpoint consists of:

  • a function defined in src/index.ts (e.g. getBalances)
  • a path definition (e.g. '/chains/{chainId}/safes/{address}/balances/{currency}/')
  • operation definition (e.g. safes_balances_list)
  • response definition

To add a new endpoint, follow the pattern set by the existing endpoints.

Eslint & prettier

This command will run before every commit:

yarn eslint:fix

Tests

To run the unit and e2e tests locally:

yarn test

N.B.: the e2e tests make actual API calls on staging.

Readme

Keywords

none

Package Sidebar

Install

npm i @safe-global/safe-gateway-typescript-sdk

Weekly Downloads

175,404

Version

3.21.1

License

MIT

Unpacked Size

124 kB

Total Files

63

Last publish

Collaborators

  • iamacook
  • katspaugh