Share via


ConfidentialLedgerClient.CreateLedgerEntry Method

Definition

[Protocol Method] Writes a ledger entry.

  • This protocol method allows explicit creation of the request and processing of the response for advanced scenarios.
public virtual Azure.Response CreateLedgerEntry (Azure.Core.RequestContent content, string collectionId = default, Azure.RequestContext context = default);
abstract member CreateLedgerEntry : Azure.Core.RequestContent * string * Azure.RequestContext -> Azure.Response
override this.CreateLedgerEntry : Azure.Core.RequestContent * string * Azure.RequestContext -> Azure.Response
Public Overridable Function CreateLedgerEntry (content As RequestContent, Optional collectionId As String = Nothing, Optional context As RequestContext = Nothing) As Response

Parameters

content
RequestContent

The content to send as the body of the request.

collectionId
String

The collection id.

context
RequestContext

The request context, which can override default behaviors of the client pipeline on a per-call basis.

Returns

The response returned from the service.

Exceptions

content is null.

Service returned a non-success status code.

Examples

This sample shows how to call CreateLedgerEntry and parse the result.

TokenCredential credential = new DefaultAzureCredential();
ConfidentialLedgerClient client = new ConfidentialLedgerClient(new Uri("http://localhost:3000"), credential);

using RequestContent content = RequestContent.Create(new
{
    contents = "<contents>",
});
Response response = client.CreateLedgerEntry(content);

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("collectionId").ToString());

This sample shows how to call CreateLedgerEntry with all parameters and request content and parse the result.

TokenCredential credential = new DefaultAzureCredential();
ConfidentialLedgerClient client = new ConfidentialLedgerClient(new Uri("http://localhost:3000"), credential);

using RequestContent content = RequestContent.Create(new
{
    contents = "<contents>",
});
Response response = client.CreateLedgerEntry(content, collectionId: "<collectionId>");

JsonElement result = JsonDocument.Parse(response.ContentStream).RootElement;
Console.WriteLine(result.GetProperty("collectionId").ToString());

Remarks

A collection id may optionally be specified.

Below is the JSON schema for the request and response payloads.

Request Body:

Schema for LedgerEntry:

{
  contents: string, # Required. Contents of the ledger entry.
  collectionId: string, # Optional.
  transactionId: string, # Optional. A unique identifier for the state of the ledger. If returned as part of a LedgerEntry, it indicates the state from which the entry was read.
}

Response Body:

Schema for LedgerWriteResult:

{
  collectionId: string, # Required.
}

Applies to