ontology dApi

Usage no npm install needed!

<script type="module">
  import ontDevOntologyDapi from 'https://cdn.skypack.dev/@ont-dev/ontology-dapi';


ontology dApi

English / 中文


API for dApps on Ontology blockchain. This is an implementation of dAPI from OEP-6 communication protocol.

It is necessary to have installed suitable dAPI provider . Reference implementation is Cyano Wallet.

The library is written in TypeScript, so all the methods and objects are typed. It is therefore usable in TypeScript projects as well as vanilla JavaScript projects.

How to use

ontology-dapi can be used as CommonJS/ES6 module or directly referencing in web page html.

Install CommonJS/ES module

npm install @ont-dev/ontology-dapi


yarn add @ont-dev/ontology-dapi

Import CommonJS

var client = require('@ont-dev/ontology-dapi').client;

Import ES6 module

import { client } from '@ont-dev/ontology-dapi';

Web require

The browser.js file under the '/lib' folder needs to be referenced from the page:

<script src="./lib/browser.js"></script>

The use of the code is required under the global namespace of Ont.

var client = dApi.client;


dApp needs to register itself as a client with the ontology-dapi library to enable the communication.

import { client } from '@ont-dev/ontology-dapi';



Examples of usage can be found in EXAMPLES.md or in a demo app


All the methods of dAPI from OEP-6 are organised into smaller units: asset, identity, message, network, provider, smartContract and utils. The definitions of the methods can be found directly in the OEP-6.


Required Tools and Dependencies

  • Node
  • Yarn


Execute these commands in the project's root directory:


git clone 'https://github.com/ontio/ontology-dapi.git'
cd ontology-dapi



Development build

This will build the project with minimum polyfilling for better debug experience.

yarn build:dev

You will get the packaged code under '/lib'.

Production build

yarn build:prod

You will get the packaged code under '/lib'

Built With



This project is licensed under the ISC License - see the LICENSE.md file for details