Sugarchain project website: https://sugarchain.org/
Sugarchain API: https://api.sugarchain.org/
Install-Package SugarchainApiClient
dotnet add package SugarchainApiClient
SugarchainApiClient
ISugarchainClient client = new SugarchainClient();
/* Operation is Abstract */
var operation = client.UseOperation<Operation>();
var @params = GetParams();
/* MethodAsync & Method is nonexistent (example) */
var resultAsync = await operation.MethodAsync(@params);
/* OR */
var result = operation.Method(@params);SugarchainClient client = new SugarchainClient();
var @params = GetParams();
/* MethodAsync & Method is nonexistent (example) */
var resultAsync = await client.Api.MethodAsync(@params);
/* OR */
var result = client.Api.Method(@params);
✅/info - ...<InfoOperation>().Get(); /* or GetAsync */
❌/height/{height}
❌/block/{hash}
❌/header/{hash}
❌/range/{height}
✅/balance/{address} - ...<BalanceOperation>().Get(address); /* or GetAsync */
❌/mempool/{address}
✅/unspent/{address} - ...<UnspentOperation>().Get(address, amount); /* or GetAsync */
❌/history/{address}
❌/transaction/{hash}
❌/mempool
✅/supply - ...<SupplyOperation>().Get(); /* or GetAsync */
✅/fee - ...<FeeOperation>().Get(); /* or GetAsync */
❌/decode/{raw}
✅/broadcast - ...<BroadcastOperation>().Send(raw); /* or SendAsync */
SugarchainClient client = new SugarchainClient();This method return current info about Sugarchain network.
- Info UseOperation
Response<InfoResult> result = client.UseOperation<InfoOperation>().Get();- Info UseOperation Async
Response<InfoResult> result = await client.UseOperation<InfoOperation>().GetAsync();- Info Api
Response<InfoResult> result = client.Api.Info();- Info Api Async
Response<InfoResult> result = await client.Api.InfoAsync();This method return address balance.
- Data
string address = "sugar1qmqvkrn5zw2v60tl0syfmxwrkre4kagpak0t9s5";- Balance UseOperation
Response<BalanceResult> result = client.UseOperation<BalanceOperation>().Get(address);- Balance UseOperation Async
Response<BalanceResult> result = await client.UseOperation<BalanceOperation>().GetAsync(address);- Balance Api
Response<BalanceResult> result = client.Api.Balance(address);- Balance Api Async
Response<BalanceResult> result = await client.Api.BalanceAsync(address);This method return address unspent outputs.
- Data
string address = "sugar1qmqvkrn5zw2v60tl0syfmxwrkre4kagpak0t9s5";
int amount = 0;- Unspent UseOperation
Response<UnspentResult> result = client.UseOperation<UnspentOperation>().Get(address, amount);- Unspent UseOperation Async
Response<UnspentResult> result = await client.UseOperation<UnspentOperation>().GetAsync(address, amount);- Unspent Api
Response<UnspentResult> result = client.Api.Unspent(address, amount);- Unspent Api Async
Response<UnspentResult> result = await client.Api.UnspentAsync(address, amount);This method return info about current coins supply.
- Supply UseOperation
Response<SupplyResult> result = client.UseOperation<SupplyOperation>().Get();- Supply UseOperation Async
Response<SupplyResult> result = await client.UseOperation<SupplyOperation>().GetAsync();- Supply Api
Response<SupplyResult> result = client.Api.Supply();- Supply Api Async
Response<SupplyResult> result = await client.Api.SupplyAsync();This method return recommended transaction fee.
- Fee UseOperation
Response<FeeResult> result = client.UseOperation<FeeOperation>().Get();- Fee UseOperation Async
Response<FeeResult> result = await client.UseOperation<FeeOperation>().GetAsync();- Fee Api
Response<FeeResult> result = client.Api.Fee();- Fee Api Async
Response<FeeResult> result = await client.Api.FeeAsync();This method broadcast raw signed transaction to Sugarchain network.
- Data
string raw = "020000000001021786bf75007d1d94b4ce3b94e885690c1dfb9299bcd97e92f7f1b0a80526f6000100000000ffffffff5adfd951b1c065a46dddb0bd0df8b652165e492cb6e5857048ddea365261d0840100000000ffffffff0200e1f50500000000160014d81961ce827299a7afef8113b338761e6b6ea03d605af405000000001600145af91e8c58fccd17682b1bc41a5df595181dc4b402483045022100bcc87972c6389c6b610bb5089a549bea2f92c67f01a3c7516223e3731f155c8b022038fa950f872310b2a576206cd0ce2980592a714ca571a4427774af7f2b68035e012102f415fdf94b01db2fa79792c849d862d4b708ca1770ebdeba004ad4f218c8565b0247304402204e9eee008c4fdd9205a3af9eb47c3c393d0ed35f29be8d670ac48edd468647890220583053b7e77e22e631a29360bca44339c5dc6f1aefd0069008097e9a564b8a0f012102f415fdf94b01db2fa79792c849d862d4b708ca1770ebdeba004ad4f218c8565b00000000";- Broadcast UseOperation
Response<string> result = client.UseOperation<BroadcastOperation>().Send(raw);- Broadcast UseOperation Async
Response<string> result = await client.UseOperation<BroadcastOperation>().SendAsync(raw);- Broadcast Api
Response<string> result = client.Api.Broadcast(raw);- Broadcast Api Async
Response<string> result = await client.Api.BroadcastAsync(raw);The Apache 2.0 License (Apache-2.0). Please see License File for more information.