# @energyweb/issuer-api

> NestJS module for interacting with renewable energy certificates

Latest version **0.7.1** (published 2022-03-16) · MIT license · 0 weekly downloads

## Install

```sh
npm install @energyweb/issuer-api
pnpm add @energyweb/issuer-api
yarn add @energyweb/issuer-api
bun add @energyweb/issuer-api
```

Provides the command `issuer-api-migrate`.

## Health

**Score 30/100 (F)** — status: abandoned.

Positive: no vulnerabilities; high maintenance score.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 0.7.1 |
| Published | 2022-03-16 |
| First published | 2020-10-29 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 19 |
| Unpacked size | 502.5 KB |
| Known vulnerabilities | 0 (+7 in 3 direct dependencies) |
| Install scripts | no |
| GitHub stars | 110 |
| Author | EnergyWeb DevHub GmbH; Joseph Bagaric, joseph.bagaric@energyweb.org |
| Maintainers | kyleiankian, energywebdev, aznagy, bagaric, pkosin, drgorb, kroy, manihagh |

## Links

- npm: https://www.npmjs.com/package/@energyweb/issuer-api
- Repository: https://github.com/energywebfoundation/origin
- Homepage: https://github.com/energywebfoundation/origin/tree/master/packages/issuer-api#readme
- Issues: https://github.com/energywebfoundation/origin/issues
- npm.io page: https://npm.io/package/@energyweb/issuer-api

## Dependencies (19)

- [pg](https://npm.io/package/pg.md) 8.7.1
- [rxjs](https://npm.io/package/rxjs.md) 7.4.0
- [cryptr](https://npm.io/package/cryptr.md) 6.0.2
- [ethers](https://npm.io/package/ethers.md) 5.3.1
- [moment](https://npm.io/package/moment.md) 2.29.1
- [typeorm](https://npm.io/package/typeorm.md) 0.2.41
- [ganache-cli](https://npm.io/package/ganache-cli.md) 6.12.2
- [moment-range](https://npm.io/package/moment-range.md) 4.0.2
- [@nestjs/config](https://npm.io/package/@nestjs/config.md) 1.0.2
- [@nestjs/swagger](https://npm.io/package/@nestjs/swagger.md) 5.1.4
- [class-validator](https://npm.io/package/class-validator.md) 0.13.2
- [@nestjs/passport](https://npm.io/package/@nestjs/passport.md) 8.0.1
- [@nestjs/schedule](https://npm.io/package/@nestjs/schedule.md) 1.0.1
- [@energyweb/issuer](https://npm.io/package/@energyweb/issuer.md) 7.0.1
- [swagger-ui-express](https://npm.io/package/swagger-ui-express.md) 4.2.0
- [ew-precise-proofs-js](https://npm.io/package/ew-precise-proofs-js.md) 1.1.0
- [@energyweb/utils-general](https://npm.io/package/@energyweb/utils-general.md) 11.2.3
- [@energyweb/origin-backend-core](https://npm.io/package/@energyweb/origin-backend-core.md) 8.2.3
- [@energyweb/origin-backend-utils](https://npm.io/package/@energyweb/origin-backend-utils.md) 1.8.3

## Recent versions

- 0.7.1 (latest) — 2022-03-16
- 0.6.2-alpha.1658756736.0 (canary) — 2022-07-25
- 0.6.2-alpha.1658745615.0 — 2022-07-25
- 0.6.2-alpha.1657642980.0 — 2022-07-12
- 0.6.2-alpha.1654697952.0 — 2022-06-08
- 0.6.2-alpha.1651489311.0 — 2022-05-02
- 0.6.2-alpha.1651149594.0 — 2022-04-28
- 0.7.2-alpha.1650636678.0 — 2022-04-22
- 0.7.0 — 2022-03-15
- 0.6.2-alpha.1646656455.0 — 2022-03-07
- 0.6.2-alpha.1646058469.0 — 2022-02-28
- 0.6.2-alpha.1646056819.0 — 2022-02-28
- 0.6.1 — 2022-01-18
- 0.6.1-alpha.1642431088.0 — 2022-01-17
- 0.6.0 — 2021-12-30
- … 522 more at https://npm.io/package/@energyweb/issuer-api/versions

## README

<p align="center">
  <a href="https://www.energyweb.org" target="blank"><img src="../../../docs/images/EW.png" width="120" alt="Energy Web Foundation Logo" /></a>
</p>

# Issuer API

## Description

The Issuer API is a [NestJS](https://nestjs.com/) 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](https://energy-web-foundation-origin.readthedocs-hosted.com/en/latest/) Traceability SDK.

## Documentation

-   [Issuer API](https://energy-web-foundation-origin.readthedocs-hosted.com/en/latest/traceability/packages/issuer-api/)
-   [Traceability SDK](https://energy-web-foundation-origin.readthedocs-hosted.com/en/latest/traceability/)

## Contributing Guidelines

See [contributing.md](../../../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](https://app.gitbook.com/@energy-web-foundation/s/energy-web/)

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

-   [Energy Web White Paper on Vision and Purpose](https://www.energyweb.org/reports/EWDOS-Vision-Purpose/)
-   [Energy Web White Paper on Technology Detail](https://www.energyweb.org/wp-content/uploads/2020/06/EnergyWeb-EWDOS-PART2-TechnologyDetail-202006-vFinal.pdf)

## Connect with Energy Web

-   [Twitter](https://twitter.com/energywebx)
-   [Discord](https://discord.com/channels/706103009205288990/843970822254362664)
-   [Telegram](https://t.me/energyweb)

## License

This project is licensed under the MIT License - see the [LICENSE](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:

```ts
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.

---
_Source: https://npm.io/package/@energyweb/issuer-api · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
