Xooa Blockchain Database (Preview)

Xooa makes it easy to use blockchain by eliminating common barriers. By gaining an enterprise blockchain platform, you can start leveraging the capabilities of blockchain almost instantly. The Xooa Ledger Database (XLDB) allows you to use blockchain like a simple database. Storing, retrieving, and querying entries without needing to write a smart contract. All you need is a Xooa account. This connector completes the picture by providing access to this database. The current state of a given entry is represented by the World State (a NoSQL database). Because blockchain is append only, the transactions that led to the current state of the entry are stored in the ledger. An entry must take the form of key-value pair where the key uniquely identifies the entry and value can take the form of a JSON object.

This connector is available in the following products and regions:

Service Class Regions
Logic Apps Standard All Logic Apps regions except the following:
     -   Azure Government regions
     -   Azure China regions
Power Automate Premium All Power Automate regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)
Power Apps Premium All Power Apps regions except the following:
     -   US Government (GCC)
     -   US Government (GCC High)

Creating a connection

To connect your account, you will need the following information:

Name Type Description
API Key securestring

The API Key for this api

Throttling Limits

Name Calls Renewal Period
API calls per connection10060 seconds

Actions

Create an entry in the database

Create a key-value entry. Function will fail if the key already exists. If you want to update an entry (the key exists), use Update; if you want to create or update use CreateUpdate.

Create or Update a document

If the key does not already exist, creates a new key-value entry, else updates the value of an existing entry.

Deletes an entry

Creates a transaction to delete an entry with agiven key. The entry’s state no longer appears but the transactions that have updated the entry, including a transaction for the deletion is always kept and never deleted from the ledger.

Get the states of entries

Gives the current state of a given list of entries

History for a key

Get the transaction history for an entry specified by the given key. Can be used to find deleted entries (through their transaction history).

Query based on selection criteria

Query the database and return entries matching the selection criteria given by the selector.

Updates a document

Updates an entry with agiven key. If an existing entry is not found, the request fails.

Create an entry in the database

Create a key-value entry. Function will fail if the key already exists. If you want to update an entry (the key exists), use Update; if you want to create or update use CreateUpdate.

Parameters

Name Key Required Type Description
Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

string

Specifies whether to perform the call asynchronously (default is false).

Create or Update a document

If the key does not already exist, creates a new key-value entry, else updates the value of an existing entry.

Parameters

Name Key Required Type Description
Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

string

Specifies whether to perform the call asynchronously (default is false).

Deletes an entry

Creates a transaction to delete an entry with agiven key. The entry’s state no longer appears but the transactions that have updated the entry, including a transaction for the deletion is always kept and never deleted from the ledger.

Parameters

Name Key Required Type Description
List of keys.
keys True string

Comma separated list of all the keys or entries to be marked as deleted.

Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

Get the states of entries

Gives the current state of a given list of entries

Parameters

Name Key Required Type Description
Keys of the requested entries.
keys True string

Comma separated list of keys.

Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

History for a key

Get the transaction history for an entry specified by the given key. Can be used to find deleted entries (through their transaction history).

Parameters

Name Key Required Type Description
The entry’s key.
key True string

The key of the entry for which transaction history is required.

Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

Query based on selection criteria

Query the database and return entries matching the selection criteria given by the selector.

Parameters

Name Key Required Type Description
Selection criteria for querying.
selector string

This is the criteria for querying the values of entries. For example: {'Make.Model':'3', 'Cost':{'$gt':150}}

List of fields.
fields string

List of fields that need to be returned. If empty, all fields for a given entry will be retrieved.

Maximum number of entries.
limit integer

Maximum number of entries that can be retrieved.

Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

Updates a document

Updates an entry with agiven key. If an existing entry is not found, the request fails.

Parameters

Name Key Required Type Description
Asynchronous call indicator
async boolean

Specifies whether to perform the call asynchronously (default is false).

Timeout (synchronous calls only)
timeout integer

Timeout waiting on a response from a synchronous call (async false).A 202 Pending Transaction Response with the URL to retrieve appears if the timeout value is exceeded. Default timeout value is 5000ms.

string

Specifies whether to perform the call asynchronously (default is false).