🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

deriv-api-ts

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

deriv-api-ts

A typescript wrapper around Deriv API

1.0.7
latest
Source
npm
Version published
Weekly downloads
14
366.67%
Maintainers
1
Weekly downloads
 
Created
Source

deriv-api-ts

A typescript wrapper around Deriv API.

Installation

Yarn

yarn add deriv-api-ts

NPM

npm install deriv-api-ts

Usage

Endpoints without authentication

import { DerivAPIWrapper } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(appId);
const websiteStatus = await api.websiteStatus();

console.log(websiteStatus);

// You will have intellisense on the return types...
console.log(websiteStatus.api_call_limits.max_requests_outcome.hourly);

Endpoints with authentication

You can authenticate whenever you want by calling authorize function. When you call an endpoint that needs authentication (e.g. profitTable), it will first check if the session is already authenticated. If not, it will try to authenticate with the token that is passed either to the constructor or to the last call of authorize function. If no token is found, an error will be thrown.

import { DerivAPIWrapper } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(appId);

const authResult = await api.authorize('YOUR API TOKEN');

OR

import { DerivAPIWrapper } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(appId, 'YOUR API TOKEN');

Types

@deriv/api-types package is used internally to provide support for types.

import { DerivAPIWrapper, Exception, Types as binaryTypes } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(appId, 'YOUR API TOKEN');
const params: binaryTypes.ProfitTableRequest = {
    contract_type : [ 'CALL' ],
    profit_table  : 1,
};

api.profitTable(params)
   .then((profitTableResult: binaryTypes.ProfitTable) =>
   {
       // Your code
   })
   .catch((err: Exception) =>
   {
	   console.log(`Code: ${ errObj.code } Message: ${ errObj.message } Details: ${ JSON.stringify(errObj.getParams()) }`);
   })
   // Closing the websocket connection gracefully.
   .finally(() => api.disconnect());

Error Handling

import { DerivAPIWrapper, Exception, Types } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(1234, 'YOUR API TOKEN');
const params: Types.ProfitTableRequest = {
    contract_type : [],
    profit_table  : 1,
};

api.profitTable(params)
   .then((profitTableResult) =>
   {
       // Your code
   })
   .catch((err: Exception) =>
   {
	   console.log(`Code: ${ errObj.code } Message: ${ errObj.message } Details: ${ JSON.stringify(errObj.getParams()) }`);
   })
    // Closing the websocket connection gracefully.
   .finally(() => api.disconnect());

OR

import { DerivAPIWrapper, Exception, Types } from 'deriv-api-ts';

const appId = 1234;
const api = new DerivAPIWrapper(1234, 'YOUR API TOKEN');
const params: Types.ProfitTableRequest = {
    contract_type : [],
    profit_table  : 1,
};

try
{
    const profitTableResult = await api.profitTable(params);
}
catch (err)
{
    const errObj = err as Exception;
    console.log(`Code: ${ errObj.code } Message: ${ errObj.message } Details: ${ JSON.stringify(errObj.getParams()) }`);
}
finally
{
    // Closing the websocket connection gracefully.
    api.disconnect();
}

Keywords

deriv

FAQs

Package last updated on 11 Apr 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts