Skip to content
This repository has been archived by the owner on Jul 31, 2020. It is now read-only.

mysteriumnetwork/js-tequilapi

Repository files navigation

⛔   This library is deprecated. Please use mysterium-vpn-js instead!

Mysterium Tequilapi SDK

npm version

a library to control mysterium_client and myst from mysteriumnetwork/node

Installation

npm i mysterium-tequilapi

Usage

ES6 module

import TequilapiClientFactory, { TEQUILAPI_URL } from 'mysterium-tequilapi'
const factory = new TequilapiClientFactory(TEQUILAPI_URL)
const client = factory.build(factory.buildAdapter())
client.identitiesList().then((identities) => {
  console.log(identities)
})

Output:

{"identities":[{"id":"0xf2732f2100d19d74b1b5484037ebf6c13736d1bc"}]}

node.js require syntax

const Tequilapi = require("mysterium-tequilapi")
const factory = new Tequilapi.default(Tequilapi.TEQUILAPI_URL)
const client = factory.build(factory.buildAdapter())

client.healthCheck().then((res) => {
  console.log(res)
})

Output:

{ "uptime":"75h23m14.658120675s",
  "process":19857,
  "version":"0.2.3",
  "buildInfo": {
    "commit":"91840225277923a61de2bf5683a24532ee638559",
    "branch":"0.2.3",
    "buildNumber":"1389"
  }
}

Client object fulfills the following interface:

interface TequilapiClient {
  healthCheck (timeout: ?number): Promise<NodeHealthcheckDTO>,
  stop (): Promise<void>,

  identitiesList (): Promise<Array<IdentityDTO>>,
  identityCreate (passphrase: string): Promise<IdentityDTO>,
  identityUnlock (id: string, passphrase: string): Promise<void>,
  identityRegistration (id: string): Promise<IdentityRegistrationDTO>,

  findProposals (query: ?ProposalsQuery): Promise<Array<ProposalDTO>>,

  connectionCreate (request: ConnectionRequest, timeout: ?number): Promise<ConnectionStatusDTO>,
  connectionStatus (): Promise<ConnectionStatusDTO>,
  connectionCancel (): Promise<void>,
  connectionIP (timeout: ?number): Promise<ConnectionIPDTO>,
  connectionStatistics (): Promise<ConnectionStatisticsDTO>,
  location (timeout: ?number): Promise<ConsumerLocationDTO>
}

Contribution

Run CI checks:

npm run ci

After modifying TS files run:

npm run prepack && npm run generate:flow

Docs

API docs are available tequilapi.mysterium.network

Authors