Netezos 2.1.0

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Netezos --version 2.1.0                
NuGet\Install-Package Netezos -Version 2.1.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Netezos" Version="2.1.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Netezos --version 2.1.0                
#r "nuget: Netezos, 2.1.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Netezos as a Cake Addin
#addin nuget:?package=Netezos&version=2.1.0

// Install Netezos as a Cake Tool
#tool nuget:?package=Netezos&version=2.1.0                

Netezos

Netezos is a cross-platform Tezos SDK for .NET developers, simplifying the access and interaction with the Tezos blockchain.

Getting started

Let's consider the most common use case - sending a transaction.

Installation

PM> Install-Package Netezos

Create private key

// generate new key
var key = new Key();

// or use existing one
var key = Key.FromBase58("edsk4ZkGeBwDyFVjZLL2neV5FUeWNN4NJntFNWmWyEBNbRwa2u3jh1");

// use this address to receive some tez
var address = key.PubKey.Address; // tz1SauKgPRsTSuQRWzJA262QR8cKdw1d9pyK

Get some data from RPC

using var rpc = new TezosRpc("https://mainnet-tezos.giganode.io/");

// get a head block
var head = await rpc.Blocks.Head.Hash.GetAsync<string>();

// get account's counter
var counter = await rpc.Blocks.Head.Context.Contracts[address].Counter.GetAsync<int>();

Forge an operation

Since our address has just been created, we need to reveal its public key before sending any operation, so that everyone can validate our signatures. Therefore, we need to send actually two operations: a reveal and then a transaction.

Netezos allows you to pack multiple operations into a group and forge/send it as a single batch.

var content = new ManagerOperationContent[]
{
    new RevealContent
    {
        Source = address,
        Counter = ++counter,
        PublicKey = key.PubKey.GetBase58(),
        GasLimit = 1500,
        Fee = 1000 // 0.001 tez
    },
    new TransactionContent
    {
        Source = address,
        Counter = ++counter,
        Amount = 1000000, // 1 tez
        Destination = "tz1KhnTgwoRRALBX6vRHRnydDGSBFsWtcJxc",
        GasLimit = 1500,
        Fee = 1000 // 0.001 tez
    }
};

var bytes = await new LocalForge().ForgeOperationGroupAsync(head, content);

Sign and send

// sign the operation bytes
byte[] signature = key.SignOperation(bytes);

// inject the operation and get its id (operation hash)
var result = await rpc.Inject.Operation.PostAsync(bytes.Concat(signature));

That is it. We have successfully injected our first operation into the Tezos blockchain.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Netezos:

Package Downloads
Swisschain.Sirius.Sdk.Crypto

Package Description

Beacon.Sdk

Beacon .NET SDK for Tezos wallet / dApps developers.

Nichelson

Package Description

TzWatch.Lib

Package Description

TezosPayments

Package for payment generation in the Tezos Payments system

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Netezos:

Repository Stars
baking-bad/tzkt
😼 Awesome Tezos blockchain indexer and API
Version Downloads Last updated
2.10.1 748 5/23/2024
2.10.0 96 5/23/2024
2.9.0 1,705 2/5/2024
2.8.0 2,562 3/29/2023
2.7.7 1,300 2/8/2023
2.7.6 795 2/7/2023
2.7.5 1,197 1/24/2023
2.7.4 892 1/22/2023
2.7.3 1,201 12/25/2022
2.7.2 1,072 12/9/2022
2.7.1 980 11/29/2022
2.7.0 981 11/24/2022
2.6.2 2,027 8/18/2022
2.6.1 1,131 8/3/2022
2.6.0 1,399 6/29/2022
2.6.0-rc.1 311 5/23/2022
2.5.2 3,100 3/31/2022
2.5.1 1,829 3/12/2022
2.5.0 996 3/12/2022
2.4.7 1,525 12/22/2021
2.4.6 9,801 11/25/2021
2.4.5 4,020 11/25/2021
2.4.4 1,118 11/4/2021
2.4.3 16,030 10/28/2021
2.4.2 891 10/28/2021
2.4.1 1,338 10/20/2021
2.4.0 958 10/20/2021
2.4.0-rc.1 356 9/29/2021
2.3.14 1,259 9/2/2021
2.3.13 4,041 6/15/2021
2.3.12 1,060 6/2/2021
2.3.11 1,046 5/25/2021
2.3.10 1,075 5/23/2021
2.3.9 2,446 4/9/2021
2.3.8 1,878 4/7/2021
2.3.7 934 4/2/2021
2.3.6 926 4/1/2021
2.3.5 1,033 3/29/2021
2.3.4 946 3/28/2021
2.3.3 977 3/26/2021
2.3.2 1,414 3/19/2021
2.3.1 1,016 3/17/2021
2.3.0 941 3/16/2021
2.2.1 1,591 2/20/2021
2.2.0 1,135 2/11/2021
2.1.5 951 2/9/2021
2.1.4 1,011 1/28/2021
2.1.3 1,028 1/25/2021
2.1.2 979 1/24/2021
2.1.1 1,060 1/22/2021
2.1.0 1,053 1/21/2021
2.0.1 1,040 12/9/2020
2.0.0 1,119 12/6/2020
2.0.0-rc.1 528 10/22/2020