Name: bedrock-ledger-http
Owner: Digital Bazaar, Inc.
Description: A Bedrock module to control the creation and management of decentralized ledgers via an HTTP API.
Created: 2016-12-03 19:16:03.0
Updated: 2016-12-03 19:52:09.0
Pushed: 2017-05-11 20:03:43.0
Size: 87
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
A bedrock module to control the creation and management of decentralized ledgers via an HTTP API.
install bedrock-ledger-http
s
actor = 'admin';
ledgerEndpoint = 'https://example.org/ledgers/';
ledgerConfigEvent = {
context': 'https://w3id.org/flex/v1',
: 'did:c02915fc-672d-4568-8e6e-b12a0b35cbb3/events/1',
pe: 'LedgerConfigurationEvent',
dgerConfig: {
id: 'did:c02915fc-672d-4568-8e6e-b12a0b35cbb3',
type: 'LedgerConfiguration',
name: 'test-ledger',
description: 'A test ledger',
storageMechanism: 'SequentialList',
consensusAlgorithm: {
type: 'ProofOfSignature2016',
approvedSigner: [ 'https://example.org/keys/authorized-1' ],
minimumSignaturesRequired: 1
},
eviousEvent: {
hash: 'urn:sha256:0000000000000000000000000000000000000000000000000000000000000000';
s.sign(ledgerConfigurationEvent, {
algorithm: 'LinkedDataSignature2015',
privateKeyPem: myPrivateKey,
creator: 'https://example.org/keys/authorized-1'
function(err, signedConfigEvent) {
if(err) {
return console.log('Signature failed:', err);
}
request.post({
url: ledgerEndpoint,
body: signedConfigEvent,
json: true
}, function(err, res, body) {
if(err) {
console.log('Ledger creation failed!');
} else if(res.statusCode === 201) {
console.log('Ledger created!')
}
});
;
For documentation on configuration, see config.js.
Create a new ledger
Schema: services.ledger.postConfig
Append a new event to a ledger.
Schema: services.ledger.postLedgerEvent
Get metadata for all ledgers known to the system.
Get metadata for specific ledger known to the system.
Get state machine information for a particular object.
Get metadata for specific ledger event.