@coinbase-sample/exchange-sdk-ts
v0.1.0
Published
Welcome to the Coinbase Exchange API TypeScript SDK. This TypeScript project was created to allow developers to easily plug into the [Coinbase Exchange API](https://docs.cdp.coinbase.com/exchange/docs/welcome).
Readme
Coinbase Exchange API TypeScript SDK
Overview
Welcome to the Coinbase Exchange API TypeScript SDK. This TypeScript project was created to allow developers to easily plug into the Coinbase Exchange API.
Installation
npm install @coinbase-sample/exchange-sdk-tsLicense
The Exchange Typescript SDK sample library is free and open source and released under the Apache License, Version 2.0.
The application and code are only available for demonstration purposes.
Usage
Here are a few examples requests:
Configure Credentials
const creds = JSON.parse(process.env.EXCHANGE_CREDENTIALS);
const credentials = new CoinbaseExchangeCredentials(
creds.AccessKey,
creds.SecretKey,
creds.Passphrase
);
const client = new CoinbaseExchangeClient(credentials);[List Orders]https://docs.cdp.coinbase.com/exchange/reference/exchangerestapi_getorders)
const service = new OrdersService(client);
service
.listOrders()
.then((orders) => {
console.log(orders);
})
.catch(console.error);const service = new ProductsService(client);
service
.listTradingPairs({entityId: "somePortfolioId"})
.then((result) => {
console.log(result);
})
.catch((error) => {
console.error(error.message);
});$10 Market Buy on BTC-USD
client
.createOrder({
portfolioId: "somePortfolioId",
productId: "BTC-USD",
side: OrderSide.BUY,
type: OrderType.Market,
baseQuantity: "0.0001"
})
.then((result) => {
console.log(result);
})
.catch((error) => {
console.error(error.message);
});Development Installation
npm installBuild and Use
To build the project, run the following command:
npm run buildNote: To avoid potential issues, do not forget to build your project again after making any changes to it.
After building the project, each .ts file will have its .js counterpart generated.
To run a file, use the following command:
node dist/{INSERT-FILENAME}.jsFor example, a main.ts file would be run like:
node dist/main.js