Skip to content

Latest commit

 

History

History

issuer-api

Energy Web Foundation Logo

Issuer API

Description

The Issuer API is a NestJS package that provides restful endpoints for handling Certificate operations (certificate request, issuance, transfer, claiming, revoking).

It is is a component of Energy Web Origin's Traceability SDK.

Documentation

Contributing Guidelines

See contributing.md

Energy Web Decentralized Operating System

EW-Origin is a component of the Energy Web Decentralized Operating System (EW-DOS).

The purpose of EW-DOS is to develop and deploy an open and decentralized digital operating system for the energy sector in support of a low-carbon, customer-centric energy future.

We develop blockchain technology, full-stack applications and middleware packages that facilitate participation of Distributed Energy Resources on the grid and create open market places for transparent and efficient renewable energy trading.

  • To learn about more about the EW-DOS tech stack, see our documentation

For a deep-dive into the motivation and methodology behind our technical solutions, read our White Papers:

Connect with Energy Web

License

This project is licensed under the MIT License - see the LICENSE file for details

Notes

If you decide to use CertificationRequest, then you should also include ScheduleModule.forRoot() in your application, to run synchronization task.

Signer configuration

IssuerApi module by default encrypts supplied platform operator private key using database storage, and OPERATOR_ENCRYPTION_KEY environment variable as encryption key for the storage.

If you want to use another signer, make sure to create SignerAdapter provider, that implements SignerAdapter abstract class. This provider can be registered anywhere:

import { SignerAdapter } from '@energyweb/issuer-api`;

class MyCustomSigner implements SignerAdapter {
  // ...
}

const signerAdapter = {
  provide: SignerAdapter,
  useClass: MyCustomSigner,
};

@Module({
  providers: [signerAdapter],
  imports: [IssuerApi.register()]
})

For migration instructions see changelog.