API Reference for the Kaleido Platform (1.0)

Download OpenAPI specification:Download

As a business network full stack platform, Kaleido provides a complete set of API for administrators, network operators and DApps developers.

The administrative endpoints provide full lifecycle operations around platform resources (consortia, environment, nodes, services, etc.) Each participating organization can use the API to fully automate the DevOps pipeline. Most of the resources are scoped to the organization that the logged in user is associated with. Some resources like consortia and environments support decentralized governance.

In a decentralized consortium, no single participant can delete the consortium until all but one participants have left the consortium.

In a decentrallized environment, no single participant can delete the environment until all but one participants have deleted their resources (nodes, services) inside the environment.

Deployment Regions

Kaleido is available in multiple regions. When a user resource like nodes or services is provisioned, a deployment region is determined based on a number of factors. This means the resource may be in a different region than the Kaleido console (the web UI). As such, when calling a Kaleido API, make sure to use the correct hostname for the region that the resource was provisioned in.

API endpoints for different regions are specified in Regional API Endpoints.

Query parameters

Most GET endpoint support Mongo query strings.

Resources And Services

The API is organized around the Platform Resources and Services. Platform resources include the foundation components to start a business network, such as consortia, environments, services, integration, etc. Kaleido has a large catalog of services, each providing their own developer-facing API. Each service API is displayed in their own category after the Platform Resources.

API Keys

Organization-specific administrative tokens that allow for resource CRUD operations via the Kaleido API. Similar to application credentials, API Keys are onetime-viewable strings and are not stored by the Kaleido backend. These endpoints do not support API Key generation and can only be used to retrieve or edit existing keys.

Get info about the API Keys

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new API Key

Authorizations:
bearer_token
Request Body schema: application/json
name
string

User defined name for API Key

org_id
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "org_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "org_id": "string"
}

Get a specific API Key

Authorizations:
bearer_token
path Parameters
apikey_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "org_id": "string"
}

Update an API Key

Authorizations:
bearer_token
path Parameters
apikey_id
required
string
Request Body schema: application/json
name
string

User defined name for API Key

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "org_id": "string"
}

Delete an API Key

Authorizations:
bearer_token
path Parameters
apikey_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Application Credentials

A username/password pair securing external access to a node via basic access authentication. Credentials are bound to a consortia membership, are only applicable within the environment in which they are created and must be provisioned against the same membership ID of the targeted node or service in order for an authenticated connection to take place. The credential password is a onetime-viewable string and is not stored by the Kaleido backend.

Get the Application Credentials of a particular environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create new Application Credentials

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for App Key

auth_type
string
Value: "app_creds"

The type of authentication associated with this key

hash
string

Internal storage used to validate an key (we do not store the whole key)

service_id
string

Auto-populated field. Indicates this app credential is used by provisioned service instances running in Kaleido to connect to the chain.

integration_id
string

Auto-populated field. Indicates this app credential is used by partner integrations to connect to the chain.

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Get a specific Application Credential

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
appkey_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Upsert a specific Application Credential

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
appkey_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for App Key

auth_type
string
Value: "app_creds"

The type of authentication associated with this key

hash
string

Internal storage used to validate an key (we do not store the whole key)

service_id
string

Auto-populated field. Indicates this app credential is used by provisioned service instances running in Kaleido to connect to the chain.

integration_id
string

Auto-populated field. Indicates this app credential is used by partner integrations to connect to the chain.

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Update a specific Application Credential

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
appkey_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for App Key

auth_type
string
Value: "app_creds"

The type of authentication associated with this key

hash
string

Internal storage used to validate an key (we do not store the whole key)

service_id
string

Auto-populated field. Indicates this app credential is used by provisioned service instances running in Kaleido to connect to the chain.

integration_id
string

Auto-populated field. Indicates this app credential is used by partner integrations to connect to the chain.

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Delete an Application Credential

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
appkey_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Regenerate the password for a specific app cred

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
appkey_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "auth_type": "app_creds",
  • "hash": "string",
  • "service_id": "string",
  • "integration_id": "string"
}

Audit

Retrieves a history of resource-specific CRUD operations associated with a Kaleido user's organization and/or a specific consortia (e.g. invitation issued, membership created, node deleted, etc.)

Get all events with the provided jwt

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all events for a particular consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Channels

Applicable to Hyperledger Fabric environments, channels allow client applications to programmatically construct mini-blockchains in the same Fabric blockchain network.

Get all channels in the environment (Fabric environments only)

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a channel in the Fabric environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
members
Array of strings

List of membership IDs for the channel organizations

membership_id
required
string

Field denoting the membership which initiates the channel

name
string

Channel name used in the Fabric programming model. Must follow the channel naming convention (lower case alphanumerics, dots and dashes, starting and ending with an alphanumeric)

description
string

Channel description

Array of objects (Channel_Policy)

Specify the policies that will override the default policies

Responses

Request samples

Content type
application/json
{
  • "members": [
    ],
  • "membership_id": "string",
  • "name": "string",
  • "description": "string",
  • "policies": [
    ]
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "members": [
    ],
  • "membership_id": "string",
  • "name": "string",
  • "description": "string",
  • "policies": [
    ],
  • "contracts": {
    }
}

Get a specific channel

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
channel_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "members": [
    ],
  • "membership_id": "string",
  • "name": "string",
  • "description": "string",
  • "policies": [
    ],
  • "contracts": {
    }
}

Update a specific channel's members list

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
channel_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

members
Array of strings

List of membership IDs for the channel organizations

membership_id
required
string

Field denoting the membership which initiates the channel

name
string

Channel name used in the Fabric programming model. Must follow the channel naming convention (lower case alphanumerics, dots and dashes, starting and ending with an alphanumeric)

description
string

Channel description

Array of objects (Channel_Policy)

Specify the policies that will override the default policies

object

Map of contract (chaincode) ID and metadata

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "members": [
    ],
  • "membership_id": "string",
  • "name": "string",
  • "description": "string",
  • "policies": [
    ],
  • "contracts": {
    }
}

Response samples

Content type
application/json
{
  • "members": [
    ]
}

Deploy chaincode to a channel

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
channel_id
required
string
Request Body schema: application/json
compiled_contract_id
string
init_required
boolean
Default: false

Whether the chaincode must be initialized before taking any transaction calls

Responses

Request samples

Content type
application/json
{
  • "compiled_contract_id": "string",
  • "init_required": false
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "members": [
    ],
  • "membership_id": "string",
  • "name": "string",
  • "description": "string",
  • "policies": [
    ],
  • "contracts": {
    }
}

Configurations

Resource objects used to integrate customer-controlled AWS services such as Key Management Stores, CloudWatch, PrivateLink, etc. with a Kaleido node. Configurations are defined by a type (e.g. kms, backup, opsmetric, etc.) and must be provisioned prior to creating the node. All configurations are environment-specific and rely on proper orchestration of the cloud resources.

Get the configurations for an environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a configurations for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
membership_id
required
string

Field denoting the membership which owns the Configuration

name
string

User-friendly name for the Configuration

type
required
any
Enum: "node_config" "kms" "opsmetric" "backup" "networking" "baf" "cloudhsm"

The type of configuration being managed

required
Node_Config (object) or KMS_Config (object) or OpsMetric_Config (object) or Backup_Config (object) or Networking_Config (object) or BAF Config (object) or Cloud HSM Signer Configuration (object)

Responses

Request samples

Content type
application/json
{
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Get a specific configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
config_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Upsert a specific configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
config_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

membership_id
required
string

Field denoting the membership which owns the Configuration

name
string

User-friendly name for the Configuration

type
required
any
Enum: "node_config" "kms" "opsmetric" "backup" "networking" "baf" "cloudhsm"

The type of configuration being managed

required
Node_Config (object) or KMS_Config (object) or OpsMetric_Config (object) or Backup_Config (object) or Networking_Config (object) or BAF Config (object) or Cloud HSM Signer Configuration (object)
environment_id
string

Auto-populated field denoting the environment containing the Configuration

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Update a specific configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
config_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

membership_id
required
string

Field denoting the membership which owns the Configuration

name
string

User-friendly name for the Configuration

type
required
any
Enum: "node_config" "kms" "opsmetric" "backup" "networking" "baf" "cloudhsm"

The type of configuration being managed

required
Node_Config (object) or KMS_Config (object) or OpsMetric_Config (object) or Backup_Config (object) or Networking_Config (object) or BAF Config (object) or Cloud HSM Signer Configuration (object)
environment_id
string

Auto-populated field denoting the environment containing the Configuration

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "name": "string",
  • "type": "node_config",
  • "details": {
    },
  • "environment_id": "string"
}

Delete a specific configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
config_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Consortia

A top level Kaleido resource defined by a charter and grouping of memberships. The memberships in a consortium can be bound to a single Kaleido Org or distributed across multiple Kaleido Orgs. A consortium encapsulates environments and the subsequent resources (e.g. nodes and application credentials) provisioned within an environment.

Get all consortia

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a consortia

Authorizations:
bearer_token
Request Body schema: application/json
name
string

User-friendly consortia name

description
string

User-friendly description of the consortia use case

state
string
Enum: "setup" "live" "delete_pending" "deleted"

Lifecycle state of the consortia

org_name
string
Default: "Default Organization"

Organization name for the first membership that will be auto-created along with the consortium

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "org_name": "Default Organization"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "owner": "string",
  • "deleted_at": "string"
}

Get a specific consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "owner": "string",
  • "deleted_at": "string"
}

Update a specific consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
name
string

User-friendly consortia name

description
string

User-friendly description of the consortia use case

state
string
Enum: "setup" "live" "delete_pending" "deleted"

Lifecycle state of the consortia

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "state": "setup"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "owner": "string",
  • "deleted_at": "string"
}

Delete a specific consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Get the charter of a specific consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "owner": "string",
  • "deleted_at": "string",
  • "memberships": [
    ],
  • "environments": [
    ]
}

Contracts

A contract project serves as a wrapping container to organize multiple compilations / versions of a specific Solidity contract. (The Kaleido resource for a contract compilation is called a Compiled Contract.)
Contract projects are created with a specific project type (GitHub or Precompiled) and are shared resources for all members in the consortium.

Get all contracts for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a contract for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
name
required
string

Name of the contract project (must be unique across all contracts in the consortium)

description
string

Description of the contract

membership_id
required
string

Field denoting the membership which owns the Contract

type
required
string
Enum: "github" "precompiled" "corda_jar" "fabric_precompiled_go" "fabric_upload_node"

The type of contract project being created

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github"
}

Response samples

Content type
application/json
{
  • "consortia_id": "string",
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github"
}

Get a specific contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string

Responses

Response samples

Content type
application/json
{
  • "consortia_id": "string",
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github"
}

Update a specific contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
Request Body schema: application/json
name
string

Name of the contract project (must be unique across all contracts in the consortium)

description
string

Description of the contract

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "consortia_id": "string",
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github"
}

Delete a specific contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Compiled Contracts

A compiled_contract is an individual compilation / version of a specific Solidity contract. Compiled contracts exist in the context of a Contract project. Compiled contracts can be created by importing the source from Github, or, by compiling yourself and providing the ABI and bytecode. Successful compilations can then be promoted to specific environments which results in a Gateway API on the environment which can be used to deploy new instances of the contract, as well as interact with previously deployed instances.

Get all compiled contracts for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a compiled contract for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
Request Body schema:
One of
description
required
string

Description of the compiled contract. Typically used as the version string, such as 'v1'

membership_id
required
string

Field denoting the membership which owns the Compiled Contract

contract_url
required
string

The Github url to the exact contract solidity file to be compiled. (ex: https://github.com/kaleido-io/kaleido-js/blob/master/deploy-transact/contracts/simplestorage.sol)

contract_name
string

The name of the contract to be compiled. This property is required if multiple contracts are defined in the solidity file.

oauth_token
string

A Github personal access token with read access. Only required if the Github code is located in a private repository. Kaleido DOES NOT store this token. As a result it must be provided on each request to compile a contract that is located in a private repository.

evm_version
string
Enum: "byzantium" "homestead" "tangerineWhistle" "spuriousDragon" "constantinople"

The specific EVM version to target when compiling. Omitting this property will result in byzantium as the default.

solc_version
string

The specific solc compiler version to target when compiling (ex: v0.4.24+commit.e67f0147). Omitting this property will result in Kaleido auto detecting the version specified in the source file.

Responses

Request samples

Content type
Example
{
  • "description": "string",
  • "membership_id": "string",
  • "contract_url": "string",
  • "contract_name": "string",
  • "oauth_token": "string",
  • "evm_version": "byzantium",
  • "solc_version": "string"
}

Response samples

Content type
application/json
{
  • "contract_id": "string",
  • "state": "created",
  • "bytecode_hash": "string",
  • "has_constructor_params": true,
  • "errors": [
    ],
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github",
  • "contract_url": "string",
  • "contract_name": "string",
  • "oauth_token": "string",
  • "evm_version": "byzantium",
  • "solc_version": "string",
  • "abi": "string",
  • "bytecode": "string",
  • "dev_docs": "string"
}

Create a compiled contract for the consortia by uploading a large file

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
Request Body schema: multipart/form-data
membership_id
string
filename
string <binary>

The file to upload containing the Fabric chaincode (golang binary or node.js archive) or Corda contract/flow jars

init_required
boolean
Default: false

(Fabric only) whether the chaincode requires initialization

Array of objects

(Fabric only) Only used by chaincodes that use private data collections

Array of objects (CouchDB_Indexes)

(Fabric only) Optional indexes definition used by the chaincode to perform queries. Each index object in the array will be saved as a separate index file in the chaincode package

Responses

Response samples

Content type
application/json
{
  • "contract_id": "string",
  • "state": "created",
  • "bytecode_hash": "string",
  • "has_constructor_params": true,
  • "errors": [
    ],
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github",
  • "contract_url": "string",
  • "contract_name": "string",
  • "oauth_token": "string",
  • "evm_version": "byzantium",
  • "solc_version": "string",
  • "abi": "string",
  • "bytecode": "string",
  • "dev_docs": "string"
}

Get a specific compiled contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
compiled_contract_id
required
string

Responses

Response samples

Content type
application/json
{
  • "contract_id": "string",
  • "state": "created",
  • "bytecode_hash": "string",
  • "has_constructor_params": true,
  • "errors": [
    ],
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github",
  • "contract_url": "string",
  • "contract_name": "string",
  • "oauth_token": "string",
  • "evm_version": "byzantium",
  • "solc_version": "string",
  • "abi": "string",
  • "bytecode": "string",
  • "dev_docs": "string"
}

Update a specific compiled contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
compiled_contract_id
required
string
Request Body schema: application/json
description
string

Description of the compiled contract. Typically used as the version string, such as 'v1'

Responses

Request samples

Content type
application/json
{
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "contract_id": "string",
  • "state": "created",
  • "bytecode_hash": "string",
  • "has_constructor_params": true,
  • "errors": [
    ],
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "membership_id": "string",
  • "type": "github",
  • "contract_url": "string",
  • "contract_name": "string",
  • "oauth_token": "string",
  • "evm_version": "byzantium",
  • "solc_version": "string",
  • "abi": "string",
  • "bytecode": "string",
  • "dev_docs": "string"
}

Delete a specific compiled contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
compiled_contract_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Promote the compiled contract to an environment. This will install a Gateway API on the environment which can be used to deploy new instances of this contract, as well as interact with previously deployed instances.

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
contract_id
required
string
compiled_contract_id
required
string
Request Body schema: application/json
environment_id
required
string

The environment to promote the compiled contract to

endpoint
string

The friendly path to name the Gateway API.

Responses

Request samples

Content type
application/json
{
  • "environment_id": "string",
  • "endpoint": "string"
}

Response samples

Content type
application/json
{ }

Environments

Isolated domain used to host the blockchain runtime. Environments are configurable upon creation, with different node clients (Geth, Quorum, Hyperledger Besu, Corda and Hyperledger Fabric) and multiple consensus algorithms (Raft, PoA and IBFT) available to choose from. Each environment hosts its own unique ledger and can be tethered to a public Ethereum chain for state finality and collusion resistance. Nodes, application credentials, services, and configurations are all specific to the environment within which they are created.

Get all environments for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create an environment for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
name
string

User-friendly environment name

description
string

User-friendly description of the environment use case

state
string
Enum: "setup" "initializing" "live" "delete_pending" "deleted" "failed" "pause_pending" "paused" "resume_pending" "upgrading" "paused_upgrading"

Lifecycle state of the environment

release_id
string

The release associated with this environment (auto-assigned)

prefunded_accounts
object

Accounts to fund with ether in the genesis configuration of this environment. The ether pool address is generated and funded automatically. Key is an Ethereum address. Value is the account's initial balance.

region
string
Enum: "us-east" "us-west" "eu"
provider
required
string
Enum: "quorum" "geth" "pantheon" "corda" "fabric"

The protocol which will be used by all nodes in the environment. Select pantheon in order to use Hyperledger Besu.

consensus_type
required
string
Enum: "raft" "ibft" "poa" "single-notary"

The consensus type which will be used by all nodes in the environment

chain_id
integer

The numeric chain ID deterministically generated from the environment ID

block_period
integer

The block interval which will be used by all nodes in the environment

object

Determines which test features are enabled for this environment

limit_initial_signers
boolean

Limit creation of signing nodes based on membership permissions in decentralized consortia

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true,
  • "consortia_id": "string",
  • "limits": {
    },
  • "zone_list": [
    ],
  • "node_list": [
    ],
  • "service_list": [
    ],
  • "autopause_init_delay": 0,
  • "autopause_idle_hours": 0,
  • "deleted_at": "string",
  • "paused_at": "string",
  • "resumed_at": "string"
}

Get a specific environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true,
  • "consortia_id": "string",
  • "limits": {
    },
  • "zone_list": [
    ],
  • "node_list": [
    ],
  • "service_list": [
    ],
  • "autopause_init_delay": 0,
  • "autopause_idle_hours": 0,
  • "deleted_at": "string",
  • "paused_at": "string",
  • "resumed_at": "string"
}

Update a specific environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
name
string

User-friendly environment name

description
string

User-friendly description of the environment use case

state
string
Enum: "setup" "initializing" "live" "delete_pending" "deleted" "failed" "pause_pending" "paused" "resume_pending" "upgrading" "paused_upgrading"

Lifecycle state of the environment

release_id
string

The release associated with this environment (auto-assigned)

prefunded_accounts
object

Accounts to fund with ether in the genesis configuration of this environment. The ether pool address is generated and funded automatically. Key is an Ethereum address. Value is the account's initial balance.

region
string
Enum: "us-east" "us-west" "eu"

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true,
  • "consortia_id": "string",
  • "limits": {
    },
  • "zone_list": [
    ],
  • "node_list": [
    ],
  • "service_list": [
    ],
  • "autopause_init_delay": 0,
  • "autopause_idle_hours": 0,
  • "deleted_at": "string",
  • "paused_at": "string",
  • "resumed_at": "string"
}

Delete a specific environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Get an Environment's status

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "state": "setup",
  • "node_list": [
    ],
  • "upgrade": {
    },
  • "health": {
    }
}

Get an Environment's Ethereum-specific stats

Only applicable to Ethereum environments. Returns each node's transaction pool status, block height and p2p network peers

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "legend": { },
  • "nodes": { }
}

Get an Environment's genesis configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{ }

Upgrade a specific environment to the latest version

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true,
  • "consortia_id": "string",
  • "limits": {
    },
  • "zone_list": [
    ],
  • "node_list": [
    ],
  • "service_list": [
    ],
  • "autopause_init_delay": 0,
  • "autopause_idle_hours": 0,
  • "deleted_at": "string",
  • "paused_at": "string",
  • "resumed_at": "string"
}

Apply available hard fork EIPs to a specific environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
hard_fork_with_upgrade
boolean
Default: false

When set to true, upgrades environment to latest version and applies optional_hardfork_eips of the latest release

Responses

Request samples

Content type
application/json
{
  • "hard_fork_with_upgrade": false
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "description": "string",
  • "state": "setup",
  • "release_id": "string",
  • "prefunded_accounts": { },
  • "region": "us-east",
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "chain_id": 0,
  • "block_period": 0,
  • "test_features": {
    },
  • "limit_initial_signers": true,
  • "consortia_id": "string",
  • "limits": {
    },
  • "zone_list": [
    ],
  • "node_list": [
    ],
  • "service_list": [
    ],
  • "autopause_init_delay": 0,
  • "autopause_idle_hours": 0,
  • "deleted_at": "string",
  • "paused_at": "string",
  • "resumed_at": "string"
}

Fund an account from the environment's faucet. Can transfer ETH or tokens owned by the faucet account.

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
type
string
Default: "eth"

Type of fund to transfer. Can be eth or token

account
string

The Ethereum address to send funds to

amount
string

The amount to send

unit
string
Default: "ether"

The unit of ether to send (ex. ether, qwei, wei, finney, etc.)

tokenAddress
string

The address of the token contract. Required if type is set to token

Responses

Request samples

Content type
application/json
{
  • "type": "eth",
  • "account": "string",
  • "amount": "string",
  • "unit": "ether",
  • "tokenAddress": "string"
}

Response samples

Content type
application/json
{
  • "blockHash": "string",
  • "blockNumber": 0,
  • "contractAddress": "string",
  • "cumulativeGasUsed": 0,
  • "from": "string",
  • "gasUsed": 0,
  • "logs": [
    ],
  • "logsBloom": "string",
  • "status": true,
  • "to": "string",
  • "transactionHash": "string",
  • "transactionNumber": "string"
}

Get ether balance of the account.

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string

Responses

Response samples

Content type
application/json
{
  • "ether": "string",
  • "wei": "string"
}

Get an Environment's Backup Status

Only applicable to Ethereum environments that have Environment Backups enabled. Returns a record of history of all backup files for an environment.

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "latest_backup": "string",
  • "provider": "string",
  • "current_backup_files": [ ],
  • "history": [ ],
  • "start_block": 0,
  • "end_block": 0
}

Get an Environment's Backup Configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "enabled": true,
  • "backup_type": "string",
  • "backup_frequency": 1,
  • "environment_id": "string"
}

Create an Environment's Backup Configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
enabled
boolean

Enables Automated Environment Backups

backup_frequency
any
Enum: 1 2 3 4

How often a Backup will be taken, 1-4 times a day

backup_type
any
Value: "Daily"

Type of frequency for a backup

Responses

Request samples

Content type
application/json
{
  • "enabled": true,
  • "backup_frequency": 1,
  • "backup_type": "Daily"
}

Response samples

Content type
application/json
{
  • "enabled": true,
  • "backup_type": "string",
  • "backup_frequency": 1,
  • "environment_id": "string"
}

Update an Environment's Backup Configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
enabled
boolean

Enables Automated Environment Backups

backup_frequency
any
Enum: 1 2 3 4

How often a Backup will be taken, 1-4 times a day

backup_type
any
Value: "Daily"

Type of frequency for a backup

Responses

Request samples

Content type
application/json
{
  • "enabled": true,
  • "backup_frequency": 1,
  • "backup_type": "Daily"
}

Response samples

Content type
application/json
{
  • "enabled": true,
  • "backup_type": "string",
  • "backup_frequency": 1,
  • "environment_id": "string"
}

Delete a specific environment's backup configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Identity Proof

Digital x509 certificate used as attestation for an asserted Kaleido Identity. Proofs can be used in conjunction with a specific Ethereum address bound to the calling Kaleido Org to establish an on-chain identity.

Get all proofs of an organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add an ID proof to an organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "x509",
  • "payload": "string",
  • "nonce": "string",
  • "org_id": "string"
}

Get a specific ID proof of an organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
proof_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "x509",
  • "payload": "string",
  • "nonce": "string",
  • "org_id": "string"
}

Update the details of an ID proof of an organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
proof_id
required
string
Request Body schema: application/json
name
string

A descriptive name for usability

type
string
Value: "x509"

The type of the proof supplied in this document. Currently supporting only x.509 certificates.

payload
string

The proof content. For x509 this should be a concatenated string of certs which are base64 encoded strings

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "type": "x509",
  • "payload": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "x509",
  • "payload": "string",
  • "nonce": "string",
  • "org_id": "string"
}

Remove an ID proof from an organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
proof_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Integrations

Get all integrations for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create an integration for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
name
string

User-friendly name for the Integration

details
required
object

Object with type-specific integration details

environment_id
string

Auto-populated field denoting the environment containing the Integration

membership_id
required
string

Field denoting the membership which owns the Integration

type
required
string
Enum: "clause" "unchain" "rhombus"

The type of integration being managed

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "type": "clause"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "type": "clause"
}

Get a specific integration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
integration_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "type": "clause"
}

Update a specific integration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
integration_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

name
string

User-friendly name for the Integration

details
required
object

Object with type-specific integration details

environment_id
string

Auto-populated field denoting the environment containing the Integration

membership_id
required
string

Field denoting the membership which owns the Integration

type
required
string
Enum: "clause" "unchain" "rhombus"

The type of integration being managed

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "type": "clause"
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "details": { }
}

Delete a specific integration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
integration_id
required
string

Responses

Reset the state of the integration by clearing out the tracking details and regenerating the app cred

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
integration_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "type": "clause"
}

Invitations

Used to extend participation offers to external Kaleido Organizations. Invitations can be issued on the organizational level for shared administration privileges or on the consortia level for membership/environment/node/credential CRUD permissions.

Get all invitations for the current user where they are the target

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all invitations for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create an invitation for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
consortia_id
string
org_name
required
string

Name of the organization being invited to join the consortia

state
string
Enum: "sent" "accepted" "declined" "revoked" "expired"

Lifecycle state of the invitation

email
required
string

Email to deliver the Consortia Invitation to

from_org_id
string

Can be user-provided or auto-populated based on the user which created the invitation

from_membership_id
string

Can be user-provided or auto-populated based on the user which created the invitation

permissions
object

Permissions which can be leveraged by consortia enforcing advanced policy

Responses

Request samples

Content type
application/json
{
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { },
  • "createdAt": "string",
  • "from": "string",
  • "resolved_by": "string",
  • "org_id": "string"
}

Get a specific invitation

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
invitation_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { },
  • "createdAt": "string",
  • "from": "string",
  • "resolved_by": "string",
  • "org_id": "string"
}

Upsert a specific invitation

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
invitation_id
required
string
Request Body schema: application/json
consortia_id
string
org_name
string

Name of the organization being invited to join the consortia

state
string
Enum: "sent" "accepted" "declined" "revoked" "expired"

Lifecycle state of the invitation

Responses

Request samples

Content type
application/json
{
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { },
  • "createdAt": "string",
  • "from": "string",
  • "resolved_by": "string",
  • "org_id": "string"
}

Update a specific invitation

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
invitation_id
required
string
Request Body schema: application/json
consortia_id
string
org_name
string

Name of the organization being invited to join the consortia

state
string
Enum: "sent" "accepted" "declined" "revoked" "expired"

Lifecycle state of the invitation

Responses

Request samples

Content type
application/json
{
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { },
  • "createdAt": "string",
  • "from": "string",
  • "resolved_by": "string",
  • "org_id": "string"
}

Delete a specific invitation

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
invitation_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Get a specific invitation with some extra info

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
invitation_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "consortia_id": "string",
  • "org_name": "string",
  • "state": "sent",
  • "email": "string",
  • "from_org_id": "string",
  • "from_membership_id": "string",
  • "permissions": { },
  • "createdAt": "string",
  • "from": "string",
  • "resolved_by": "string",
  • "org_id": "string",
  • "consortia": {
    },
  • "memberships": [
    ],
  • "environments": [
    ]
}

Ledger

Used to access blockchain data like transactions, blocks, contracts, and address details. Updating contract metadata and compiling for verification is also supported here.

Get a range of blocks in the chain

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
query Parameters
start
integer

The number of blocks to skip, starting from the latest one

limit
integer

The number of blocks to return (max of 25)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a specific block in the chain

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
block_number
required
string

Responses

Response samples

Content type
application/json
{
  • "number": 0,
  • "hash": "string",
  • "timestamp": "string",
  • "transactionCount": 0,
  • "size": 0,
  • "miner": "string"
}

Get the transactions in a specific block

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
block_number
required
string
query Parameters
start
integer

The number of transactions to skip, starting from the latest one

limit
integer

The number of transactions to return (max of 25)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get the last 25 transactions from the ledger or lookup using the range parameters

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
query Parameters
start
integer

The number of transactions to skip, starting from the last one

limit
integer

The number of transactions to return

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get information about a transaction

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
hash
required
string

Responses

Response samples

Content type
application/json
{
  • "hash": "string",
  • "status": "string",
  • "from": "string",
  • "to": "string",
  • "timestamp": "string",
  • "index": 0,
  • "blockNumber": 0,
  • "blockHash": "string"
}

Get the receipt of a specific transaction

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
hash
required
string

Responses

Response samples

Content type
application/json
{
  • "blockHash": "string",
  • "blockNumber": 0,
  • "contractAddress": "string",
  • "cumulativeGasUsed": 0,
  • "from": "string",
  • "gasUsed": 0,
  • "logs": [
    ],
  • "logsBloom": "string",
  • "status": true,
  • "to": "string",
  • "transactionHash": "string",
  • "transactionNumber": "string"
}

Get a deployed contract's information

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string

Responses

Response samples

Content type
application/json
{
  • "address": "string",
  • "genesisTransaction": "string",
  • "creator": "string",
  • "contractName": "string",
  • "description": "string",
  • "dateVerified": "string",
  • "compilerVersion": "string",
  • "optimization": true,
  • "sourceCode": "string",
  • "abi": "string",
  • "gatewayAPIId": "string",
  • "runtimeBytecode": "string",
  • "creationBytecode": "string"
}

Get a deployed contract's transactions

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
query Parameters
start
integer

The number of transactions to skip, starting from the latest one

limit
integer

The number of transactions to return (max of 25)

Responses

Response samples

Content type
application/json
{
  • "hash": "string",
  • "status": "string",
  • "from": "string",
  • "to": "string",
  • "timestamp": "string",
  • "index": 0,
  • "blockNumber": 0,
  • "blockHash": "string"
}

Get the contracts deployed on the chain

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
query Parameters
start
integer

The number of contracts to skip, starting from the latest one

limit
integer

The number of contracts to return (max of 25)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get info about a specific deployed contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string

Responses

Response samples

Content type
application/json
{
  • "address": "string",
  • "genesisTransaction": "string",
  • "creator": "string",
  • "contractName": "string",
  • "description": "string",
  • "dateVerified": "string",
  • "compilerVersion": "string",
  • "optimization": true,
  • "sourceCode": "string",
  • "abi": "string",
  • "gatewayAPIId": "string",
  • "runtimeBytecode": "string",
  • "creationBytecode": "string"
}

Update a specific contract's metadata

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
Request Body schema: application/json
address
string
genesisTransaction
string
creator
string
contractName
string
description
string
dateVerified
string
compilerVersion
string
optimization
boolean
sourceCode
string
abi
string
gatewayAPIId
string

The Gateway API this deployment matched to. Determined at deployment time via runtime bytecode verification.

runtimeBytecode
string
creationBytecode
string

Responses

Request samples

Content type
application/json
{
  • "address": "string",
  • "genesisTransaction": "string",
  • "creator": "string",
  • "contractName": "string",
  • "description": "string",
  • "dateVerified": "string",
  • "compilerVersion": "string",
  • "optimization": true,
  • "sourceCode": "string",
  • "abi": "string",
  • "gatewayAPIId": "string",
  • "runtimeBytecode": "string",
  • "creationBytecode": "string"
}

Response samples

Content type
application/json
{
  • "address": "string",
  • "genesisTransaction": "string",
  • "creator": "string",
  • "contractName": "string",
  • "description": "string",
  • "dateVerified": "string",
  • "compilerVersion": "string",
  • "optimization": true,
  • "sourceCode": "string",
  • "abi": "string",
  • "gatewayAPIId": "string",
  • "runtimeBytecode": "string",
  • "creationBytecode": "string"
}

Get the Gateway API's that have been promoted to this environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
query Parameters
start
integer

The number of Gateway API's to skip, starting from the last one

limit
integer

The number of Gateway API's to return (max of 25)

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "gatewayAPIs": [
    ]
}

Get info about a specific Gateway API

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
gateway_api_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "endpoint": "string",
  • "abi": "string",
  • "bytecode": "string",
  • "devDocs": "string",
  • "bytecodeHash": "string",
  • "bytecodeLength": 0,
  • "consortiaContractId": "string",
  • "consortiaContractName": "string",
  • "description": "string",
  • "hasConstructorParams": true,
  • "isFactoryDeployEnabled": true
}

Get all the deployed contract instances of a single Gateway API

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
gateway_api_id
required
string
query Parameters
start
integer

The number of contracts to skip, starting from the last one

limit
integer

The number of contracts to return (max of 25)

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "contracts": [
    ]
}

Get the token contracts deployed on the chain

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
query Parameters
start
integer

The number of contracts to skip, starting from the last one

limit
integer

The number of contracts to return (max of 25)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get info about a specific deployed token contract

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string

Responses

Response samples

Content type
application/json
{
  • "address": "string",
  • "genesisTransaction": "string",
  • "creator": "string",
  • "contractName": "string",
  • "description": "string",
  • "dateVerified": "string",
  • "compilerVersion": "string",
  • "optimization": true,
  • "sourceCode": "string",
  • "abi": "string",
  • "gatewayAPIId": "string",
  • "runtimeBytecode": "string",
  • "creationBytecode": "string"
}

Get the balance of a particular account for a specific erc20 token contract

path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
account
required
string

Responses

Response samples

Content type
application/json
{
  • "balance": "string"
}

Get the owner of a particular tokenId for a specific erc721 token contract

path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
tokenId
required
string

Responses

Response samples

Content type
application/json
{
  • "address": "string"
}

Get transfers of a token

Get transfer transactions for a specific token contract, with pagination and a limit of up to 25 records per query"

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
query Parameters
start
integer

The number of transfer transactions to skip, starting from the latest one

limit
integer

The number of transfer transactions to return (max of 25)

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "transactions": [
    ]
}

Get transfers of a token to/from a wallet address

Get transfer transactions to or from a particular wallet address for a specific token contract, with pagination and a limit of up to 25 records per query"

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
address
required
string
wallet_address
required
string
query Parameters
start
integer

The number of transfer transactions to skip, starting from the latest one

limit
integer

The number of transfer transactions to return (max of 25)

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "transactions": [
    ]
}

Get the ledger stats since a specific time

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
since
required
string

Responses

Response samples

Content type
application/json
{
  • "height": 0,
  • "transactionCount": 0,
  • "blockCount": 0,
  • "avgTransactionsPerBlock": 0,
  • "failedTransactionCount": 0,
  • "lastTransactionTimestamp": "string",
  • "details": {
    }
}

Gets last chain activity

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Memberships

Resource objects used to define an organization within the context of a consortium. Kaleido organizations can exist in a consortia through a single membership or through a series of memberships. Environmental resource objects (e.g. nodes, credentials, configurations, etc.) are always bound to a specific membership ID.

Get all memberships for the current user

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all memberships for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a membership for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
org_name
string

Name of the organization identified in the accepted invitation

object

Permissions which can be leveraged by decentralized consortia

verification_type
string

Identity type obtained from the backing organization

verification_proof
string

Identity proof obtained from the backing organization

verification_selfsigned
boolean

Indicates whether the verification_proof was automatically generated by Kaleido

consortia_id
string
org_id
required
string

Auto-populated field representing the Organization for this Consortia membership

state
string
Enum: "active" "inactive" "deleted"

Lifecycle state of the membership

Responses

Request samples

Content type
application/json
{
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active",
  • "deleted_at": "string"
}

Get a specific membership

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active",
  • "deleted_at": "string"
}

Update a specific membership

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
Request Body schema: application/json
org_name
string

Name of the organization identified in the accepted invitation

object

Permissions which can be leveraged by decentralized consortia

verification_type
string

Identity type obtained from the backing organization

verification_proof
string

Identity proof obtained from the backing organization

verification_selfsigned
boolean

Indicates whether the verification_proof was automatically generated by Kaleido

Responses

Request samples

Content type
application/json
{
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active",
  • "deleted_at": "string"
}

Delete a specific membership

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Get a specific membership's owner

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active",
  • "deleted_at": "string",
  • "owner": "string",
  • "delegate_email": "string"
}

Get a specific membership's identity proof

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
query Parameters
format
string

Optional parameter to specify json input

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "x509",
  • "payload": "string",
  • "nonce": "string",
  • "org_id": "string"
}

Update the verification of a particular membership

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
Request Body schema: application/json
One of
proof_id
required
string

The _id of an Identity Proof

Responses

Request samples

Content type
application/json
Example
{
  • "proof_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "org_name": "string",
  • "permissions": {
    },
  • "verification_type": "string",
  • "verification_proof": "string",
  • "verification_selfsigned": true,
  • "consortia_id": "string",
  • "org_id": "string",
  • "state": "active",
  • "deleted_at": "string"
}

Nodes

The network resources responsible for transaction execution, block signing/consensus and maintaining the ledger. Nodes are bound to a consortia membership and inherit the environment's client/consensus configuration (e.g. Geth + PoA).

Get all nodes for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a node for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
node_config_id
string

ID of the Startup Configuration being used by this node

kms_id
string

ID of the KMS Configuration being used by this node

backup_id
string

ID of the Backup Configuration being used by this node

name
string

User-friendly name for the node

size
string
Enum: "small" "medium" "large" "small" "medium" "large"

Pre-defined allowance for transaction pool and memory usage

environment_id
string

Auto-populated field denoting the environment containing the node

membership_id
required
string

ID of the Membership which owns the node

opsmetric_id
string

ID of the Ops Metric Configuration being used by this node

ethconnect_id
string

ID of the EthConnect Configuration being used by this node

networking_id
string

ID of the EthConnect Configuration being used by this node

revision_added
number

Environment revision at which this node was added

provider
string
Enum: "quorum" "geth" "pantheon" "corda" "fabric"

The protocol inherited from the environment

consensus_type
string
Enum: "raft" "ibft" "poa" "single-notary"

The consensus type inherited from the environment

enode_uri
string

ENODE uri for the node

node_identity
string

The node's identity, backed by a private key

consensus_identity
string

The identity the node uses in the chosen consensus protocol

first_user_account
string

First user account for the node

role
string
Enum: "validator" "monitor"

The role of this node in the environment - system monitor or customer node

init_consensus_role
string
Enum: "signer" "non-signer"

Role of the node in consensus mechanism at creation

quorum_private_address
string

Quorum specific field. The public address for sending private transactions to this node (via privateFor)

database_type
string
Enum: "h2" "postgres"

Only applicable to Corda nodes, the type of database for saving state data.

Responses

Request samples

Content type
application/json
{
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Get Node details

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Update a specific node

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
node_config_id
string

ID of the Node Configuration being used by this node

kms_id
string

ID of the KMS Configuration being used by this node

backup_id
string

ID of the Backup Configuration being used by this node

name
string

User-friendly name for the node

size
string
Enum: "small" "medium" "large"

Pre-defined allowance for transaction pool and memory usage

Responses

Request samples

Content type
application/json
{
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Delete a node

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Get Node's runtime status

Provides information about node's runtime, such as current block height, signer list, chain configuration, access URLs and more

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Response samples

Content type
application/json
Example
{
  • "id": "string",
  • "release": "string",
  • "user_accounts": [
    ],
  • "block_height": 0,
  • "consensus_identity": "string",
  • "membership_id": "string",
  • "urls": {
    },
  • "kafka": {
    },
  • "geth": {
    }
}

Reset a node

Reset a node after modification to backup_id/kms_id/zone_id/node_config_id to apply any updated configuration. Does not affect chain data on the node

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Restart a node

Restart a node's runtime

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Stop a running node

Stops a running node after voting it out of the signer list - available for POA & IBFT based environments

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Start a Stopped node

Starts a stopped node, the node is started as a non-signer - available for POA & IBFT based environments

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "node_config_id": "string",
  • "kms_id": "string",
  • "backup_id": "string",
  • "name": "string",
  • "size": "small",
  • "environment_id": "string",
  • "membership_id": "string",
  • "opsmetric_id": "string",
  • "ethconnect_id": "string",
  • "networking_id": "string",
  • "revision_added": 0,
  • "provider": "quorum",
  • "consensus_type": "raft",
  • "enode_uri": "string",
  • "node_identity": "string",
  • "consensus_identity": "string",
  • "first_user_account": "string",
  • "role": "validator",
  • "init_consensus_role": "signer",
  • "quorum_private_address": "string",
  • "database_type": "h2",
  • "urls": {
    }
}

Create a Node Account

Creates a new account on a node and unlocks it so it's ready to use for signing transactions.

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
password
string

A password to protect the new Ethereum account file

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "address": "string"
}

Get a specific node's logs

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
log_type
required
string
Enum: "geth" "constellation" "pantheon" "ethsigner" "orion" "ethconnect" "baf"

For a Geth node, use geth to access the blockchain node log.
For a Quorum node, use geth to access the blockchain node log, use constellation to access the Tessera private transaction manager log.
For a Hyperledger Besu node, use pantheon to access the blockchain node log, use orion to access the private transaction manager log, use ethsigner to access the signing wallet log.
For any node, use ethconnect to access the REST API Gateway log, use baf to access the Blockchain Application Firewall log.

query Parameters
maxlines
integer

The max number of lines to return (default 20)

frompos
integer

The start position of the logs to return

Responses

Response samples

Content type
application/json
[
  • "string"
]

Backup a Node's /qdata

Backup a Node's /qdata content to the attached backup store (AWS S3 bucket or Azure Storage Blob)

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string
Request Body schema: application/json
presigned_url
string

An AWS S3 Pre-Signed URL as the backup destination

Responses

Request samples

Content type
application/json
{
  • "presigned_url": "string"
}

Transaction pool summary

Get a summary of the nodes's transaction pool contents

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Response samples

Content type
application/json
{
  • "pending": "string",
  • "queued": "string"
}

Transaction pool contents

Get details of the nodes's transaction pool contents

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
node_id
required
string

Responses

Response samples

Content type
application/json
{
  • "pending": { },
  • "queued": { }
}

OAuth Configurations

OAuth Resource Server Configurations for authorizing applications to connect to your nodes via the Blockchain Application Firewall (BAF) with JWT tokens signed by an OAuth Authorization Server.

Get the OAuth Configurations of a particular environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create new OAuth Configurations

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for the OAuth server

verification_type
string
Value: "jwt"

Currently only self-describing JWT tokens are support (Opaque keys requiring REST API calls to decode them are not supported)

jwt_key_set
string

A public key to use to verify the token

jwt_key_type
string
Enum: "jwks" "ec_pem" "rsa_pem"

The type of the public key

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Get a specific OAuth Resource Manager configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
oauth_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Upsert a specific OAuth Resource Manager configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
oauth_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for the OAuth server

verification_type
string
Value: "jwt"

Currently only self-describing JWT tokens are support (Opaque keys requiring REST API calls to decode them are not supported)

jwt_key_set
string

A public key to use to verify the token

jwt_key_type
string
Enum: "jwks" "ec_pem" "rsa_pem"

The type of the public key

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Update a specific OAuth Resource Manager configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
oauth_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

environment_id
string

Auto-generated key for the environment that owns this key

membership_id
required
string

Auto-generated key for the membership that owns this key

dapp_id
string

The DApp that owns this Key

name
string

User defined name for the OAuth server

verification_type
string
Value: "jwt"

Currently only self-describing JWT tokens are support (Opaque keys requiring REST API calls to decode them are not supported)

jwt_key_set
string

A public key to use to verify the token

jwt_key_type
string
Enum: "jwks" "ec_pem" "rsa_pem"

The type of the public key

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "environment_id": "string",
  • "membership_id": "string",
  • "dapp_id": "string",
  • "name": "string",
  • "verification_type": "jwt",
  • "jwt_key_set": "string",
  • "jwt_key_type": "jwks"
}

Delete an OAuth Resource Manager configuration

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
oauth_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Organizations

Enumerates all subscriptions your Kaleido Organization has access to. These endpoints do not support the creation of new Kaleido Orgs and can only be used to retrieve or edit existing subscriptions.

Get the Organizations that user has access to

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new Organization

Authorizations:
bearer_token
Request Body schema: application/json
name
string

User-friendly organization name, defaults to empty string

plan
string
plan_id
string
support_level
number multiple of 100 [ 100 .. 300 ]

The level of support entitlement for the organization

delegate
string

Email to be exposed on consortia memberships as contact info

waitlisted
boolean
terms_accepted
number

Timestamp of the last time terms and conditions were accepted for this org

trial_ends
string

Date when the organizations trial is expected to end

object
cognito_domain
string

The Cognito domain name such as 'mydomain.auth.us-east-1.amazoncognito.com' - only used for Enterprise logins

cognito_user_pool_id
string

The Cognito user pool ID - only used for Enterprise logins

cognito_region
string

The Cognito region - only used for Enterprise logins

cognito_client_id
string

The client_id of the App client created for Kaleido - only used for Enterprise logins

cognito_client_secret
string

The client_secret of the App client created for Kaleido - only used for Enterprise logins

type
string
Enum: "kaleido" "enterprise_cognito"

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "plan": "string",
  • "plan_id": "string",
  • "support_level": 100,
  • "delegate": "string",
  • "waitlisted": true,
  • "terms_accepted": 0,
  • "trial_ends": "string",
  • "billing_account": {
    },
  • "cognito_domain": "string",
  • "cognito_user_pool_id": "string",
  • "cognito_region": "string",
  • "cognito_client_id": "string",
  • "cognito_client_secret": "string",
  • "type": "kaleido"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "plan": "string",
  • "plan_id": "string",
  • "support_level": 100,
  • "delegate": "string",
  • "waitlisted": true,
  • "terms_accepted": 0,
  • "trial_ends": "string",
  • "billing_account": {
    },
  • "cognito_domain": "string",
  • "cognito_user_pool_id": "string",
  • "cognito_region": "string",
  • "cognito_client_id": "string",
  • "cognito_client_secret": "string",
  • "type": "kaleido",
  • "owner": "string"
}

Get a specific Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "plan": "string",
  • "plan_id": "string",
  • "support_level": 100,
  • "delegate": "string",
  • "waitlisted": true,
  • "terms_accepted": 0,
  • "trial_ends": "string",
  • "billing_account": {
    },
  • "cognito_domain": "string",
  • "cognito_user_pool_id": "string",
  • "cognito_region": "string",
  • "cognito_client_id": "string",
  • "cognito_client_secret": "string",
  • "type": "kaleido",
  • "owner": "string"
}

Update a specific Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
Request Body schema: application/json
name
string

User-friendly organization name, defaults to empty string

plan
string
plan_id
string
support_level
number multiple of 100 [ 100 .. 300 ]

The level of support entitlement for the organization

delegate
string

Email to be exposed on consortia memberships as contact info

waitlisted
boolean
terms_accepted
number

Timestamp of the last time terms and conditions were accepted for this org

trial_ends
string

Date when the organizations trial is expected to end

object
cognito_domain
string

The Cognito domain name such as 'mydomain.auth.us-east-1.amazoncognito.com' - only used for Enterprise logins

cognito_user_pool_id
string

The Cognito user pool ID - only used for Enterprise logins

cognito_region
string

The Cognito region - only used for Enterprise logins

cognito_client_id
string

The client_id of the App client created for Kaleido - only used for Enterprise logins

cognito_client_secret
string

The client_secret of the App client created for Kaleido - only used for Enterprise logins

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "plan": "string",
  • "plan_id": "string",
  • "support_level": 100,
  • "delegate": "string",
  • "waitlisted": true,
  • "terms_accepted": 0,
  • "trial_ends": "string",
  • "billing_account": {
    },
  • "cognito_domain": "string",
  • "cognito_user_pool_id": "string",
  • "cognito_region": "string",
  • "cognito_client_id": "string",
  • "cognito_client_secret": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "plan": "string",
  • "plan_id": "string",
  • "support_level": 100,
  • "delegate": "string",
  • "waitlisted": true,
  • "terms_accepted": 0,
  • "trial_ends": "string",
  • "billing_account": {
    },
  • "cognito_domain": "string",
  • "cognito_user_pool_id": "string",
  • "cognito_region": "string",
  • "cognito_client_id": "string",
  • "cognito_client_secret": "string",
  • "type": "kaleido",
  • "owner": "string"
}

Delete a specific Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Get the plan for a specific Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "consortia": {
    },
  • "environments": {
    },
  • "nodes": {
    },
  • "services": {
    },
  • "configurations": {
    },
  • "memberships": {
    },
  • "dapps": {
    },
  • "keys": {
    },
  • "roles": {
    },
  • "ingress": {
    },
  • "plan": "string",
  • "waitlisted": true
}

Returns type of billing (aws, stripe or other) and details if using stripe

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "funding": "string",
  • "brand": "string",
  • "last4": "string",
  • "exp_month": "string",
  • "exp_year": "string",
  • "name": "string",
  • "address_line1": "string",
  • "address_line2": "string",
  • "address_city": "string",
  • "address_state": "string",
  • "address_zip": "string",
  • "address_country": "string",
  • "type": "none"
}

Configures billing provider for the organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
Request Body schema: application/json
One of
type
string
Value: "stripe"
object

The Stripe Token object, see https://stripe.com/docs/api/tokens/object for details. For this API call, only the id of the token object created in Stripe is needed.

Responses

Request samples

Content type
application/json
Example
{
  • "type": "stripe",
  • "token": {
    }
}

Response samples

Content type
application/json
{
  • "funding": "string",
  • "brand": "string",
  • "last4": "string",
  • "exp_month": "string",
  • "exp_year": "string",
  • "name": "string",
  • "address_line1": "string",
  • "address_line2": "string",
  • "address_city": "string",
  • "address_state": "string",
  • "address_zip": "string",
  • "address_country": "string",
  • "type": "none"
}

Plans

Top level identifier for Kaleido resource accessibility and associated limitations. Starter, Team, Business and Enterprise are the currently available tiers.

Get a summary of the billing data for the current month.

Authorizations:
bearer_token
path Parameters
org_id
required
string
query Parameters
month
string

the month - january,february etc. Default=current

year
string

2018 etc.

Responses

Response samples

Content type
application/json
{
  • "memberships": [
    ],
  • "nodes": [
    ],
  • "services": [
    ],
  • "storage": [
    ],
  • "support": [
    ]
}

Get all available plans

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Determine compliance with all available plans, to find resources that would prevent changing your subscription

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
{
  • "starter": {
    },
  • "team": {
    },
  • "business": {
    },
  • "enterprise": {
    }
}

Regions

Enumerates the current availability zones for account and resource creation. API host (e.g. https://console-eu.kaleido.io) defines the targetable URL.
Deployment host (e.g. eu-central-1) defines the cloud provider location.

List of API endpoints and their associated deployment zones

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "net_host": "string",
  • "state": "enabled",
  • "allow_overflow": true,
  • "environments": 0
}

Releases

Enumerates the current and historical versions of the Geth, Quorum, Hyperledger Besu, Corda and Hyperledger Fabric node software. Each release is defined by a unique resource ID and contains a description field expanding on the fixes and updates applied to the docker image (e.g. faster block indexing, improved nonce management, etc.)

Get current list of environment runtime releases

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a specific environment runtime release

Authorizations:
bearer_token
path Parameters
release_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "provider": "quorum",
  • "images": {
    },
  • "version": "string",
  • "release_status": "beta",
  • "version_padded": "string",
  • "description": "string",
  • "chain_config": [
    ],
  • "optional_eips": [
    ],
  • "prereq_eips": [
    ],
  • "optional_chain_config": [ ]
}

Roles

Enumerates the current administrators associated with a specific Kaleido Organization. Use these endpoints to query, add, or remove roles from your Kaleido Org.

Get all roles of an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add a role to an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
Request Body schema: application/json
role
string
Enum: "admin" "admin"

The role assigned to the user within this org

org_id
string

Auto-populated. The ID of the Organization associated with the role

user_id
required
string

The ID of the User associated with the role

Responses

Request samples

Content type
application/json
{
  • "role": "admin",
  • "org_id": "string",
  • "user_id": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "role": "admin",
  • "org_id": "string",
  • "user_id": "string"
}

Get a specific role of an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
role_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "role": "admin",
  • "org_id": "string",
  • "user_id": "string"
}

Upsert a role of an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
role_id
required
string
Request Body schema: application/json
role
string
Value: "admin"

The role assigned to the user within this org

Responses

Request samples

Content type
application/json
{
  • "role": "admin"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "role": "admin",
  • "org_id": "string",
  • "user_id": "string"
}

Update the details of a role of an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
role_id
required
string
Request Body schema: application/json
role
string
Value: "admin"

The role assigned to the user within this org

Responses

Request samples

Content type
application/json
{
  • "role": "admin"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "role": "admin",
  • "org_id": "string",
  • "user_id": "string"
}

Remove a role from an Organization

Authorizations:
bearer_token
path Parameters
org_id
required
string
role_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Services

A grouping of bespoke Kaleido resources offering extended functionality and security (e.g. ID Registry for on-chain validated identities or HD Wallet for identity masking). Offered on an a la carte basis, services exist as environment-specific objects that can be directly bound to a consortia member or shared across the environment as a utility.

Retrieves all services that the current user owns or has visibility of

Authorizations:
bearer_token

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all services for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a service for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
name
string

User-friendly name for the Configuration

(any or object)
environment_id
string

Auto-populated field denoting the environment containing the Configuration

membership_id
required
string

Field denoting the membership which owns the Configuration

service
required
string
Enum: "app2app" "documentstore" "chainlink" "ethwallet" "hdwallet" "idregistry" "ipfs" "rotatesigners" "tether" "cloudhsm" "fabric-ca"

The type of configuration being managed

service_type
string
Enum: "utility" "member"

Auto-populated field based on service for tenancy model

service_guid
string

Auto-populated field based on the service

size
string
Enum: "small" "medium" "large"

Service Instance Size

accounts
Array of strings

The public address of any accounts owned by this service, which might potentially have been funded on the main Ethereum network.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "service": "app2app",
  • "service_type": "utility",
  • "service_guid": "string",
  • "size": "small",
  • "accounts": [
    ]
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "service": "app2app",
  • "service_type": "utility",
  • "service_guid": "string",
  • "size": "small",
  • "accounts": [
    ],
  • "urls": {
    },
  • "state": "provisioning"
}

Get a specific service

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "service": "app2app",
  • "service_type": "utility",
  • "service_guid": "string",
  • "size": "small",
  • "accounts": [
    ],
  • "urls": {
    },
  • "state": "provisioning"
}

Update a specific service

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string
Request Body schema: application/json
name
string

User-friendly name for the Configuration

Details_Others (object)

Object with type-specific configuration details

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "details": { }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "details": { },
  • "environment_id": "string",
  • "membership_id": "string",
  • "service": "app2app",
  • "service_type": "utility",
  • "service_guid": "string",
  • "size": "small",
  • "accounts": [
    ],
  • "urls": {
    },
  • "state": "provisioning"
}

Delete a specific service

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string

Responses

Get a specific service's status

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string

Responses

Response samples

Content type
application/json
{
  • "urls": {
    },
  • "status": "provisioning",
  • "release": "string"
}

Get a specific service's logs list

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get a specific service particular log

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string
log_name
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Backup a Service's /qdata

Backup a Service's /qdata content to the attached backup store (AWS S3 bucket or Azure Storage Blob)

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
service_id
required
string
Request Body schema: application/json
presigned_url
string

An AWS S3 Pre-Signed URL as the backup destination

Responses

Request samples

Content type
application/json
{
  • "presigned_url": "string"
}

Tenants

A mechanism to authorize multiple separate entities to share a single multi-tenant blockchain node. A group of tagged tenants can be dynamnically assigned to a node using a Blockchain Application Firewall (BAF) configuration referencing the tag.

Get the Tenants of a particular environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create new Tenants

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

membership_id
string

Field denoting the membership which owns the Tenant

consortia_id
string

Auto-generated field denoting the consortium in which this Tenant exists

tag
string <= 48 characters ^[a-z0-9-_\.]*[a-z0-9]$

Bind a tenant to a node by using the 'tag' in the Blockchain Application Firewall configuration of that node

object non-empty

One or more properties that are used to unique identify this tenant when they authenticate

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Get a specific Tenant

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
tenant_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Upsert a specific Tenant

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
tenant_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

membership_id
string

Field denoting the membership which owns the Tenant

consortia_id
string

Auto-generated field denoting the consortium in which this Tenant exists

tag
string <= 48 characters ^[a-z0-9-_\.]*[a-z0-9]$

Bind a tenant to a node by using the 'tag' in the Blockchain Application Firewall configuration of that node

object non-empty

One or more properties that are used to unique identify this tenant when they authenticate

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Update a specific Tenant

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
tenant_id
required
string
Request Body schema: application/json
_id
string^[0-9a-z]{10}$
_revision
string
created_at
string

Auto-populated field denoting when a record is created

updated_at
string

Auto-populated field denoting when a record is updated

membership_id
string

Field denoting the membership which owns the Tenant

consortia_id
string

Auto-generated field denoting the consortium in which this Tenant exists

tag
string <= 48 characters ^[a-z0-9-_\.]*[a-z0-9]$

Bind a tenant to a node by using the 'tag' in the Blockchain Application Firewall configuration of that node

object non-empty

One or more properties that are used to unique identify this tenant when they authenticate

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "membership_id": "string",
  • "consortia_id": "string",
  • "tag": "string",
  • "properties": {
    }
}

Delete a Tenant

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
membership_id
required
string
tenant_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Zones

The areas in which Kaleido resources are able to exist. Multi-region support allows for resources to communicate across cloud providers and regions. Resources will inherit the default zone that was set upon creation of the parent resource if none is specified.

Get all deployment zones for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a deployment zone for the consortia

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
Request Body schema: application/json
name
string

Friendly name to identify the deployment zone

type
required
string
Value: "kaleido"

Who is managing the deployment zone

cloud
required
string
Enum: "aws" "azure"

The cloud which is hosting the deployment zone. Only allowed for Kaleido-hosted deployment zones

region
required
string
Value: "us-east-2"

Region of the specified platform. Only allowed for Kaleido-hosted deployment zones

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "consortia_id": "string",
  • "default": true
}

Get a specific consortia deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
zone_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "consortia_id": "string",
  • "default": true
}

Update a specific consortia deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
zone_id
required
string
Request Body schema: application/json
name
string

Friendly name to identify the deployment zone

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "consortia_id": "string",
  • "default": true
}

Delete a specific consortia deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
zone_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}

Get all deployment zones for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a deployment zone for the environment

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
Request Body schema: application/json
name
string

Friendly name to identify the deployment zone

type
required
string
Value: "kaleido"

Who is managing the deployment zone

cloud
required
string
Enum: "aws" "azure"

The cloud which is hosting the deployment zone. Only allowed for Kaleido-hosted deployment zones

region
required
string
Value: "us-east-2"

Region of the specified platform. Only allowed for Kaleido-hosted deployment zones

revision_received
number

The highest environment revision broadcast received by this zone

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "revision_received": 0
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "revision_received": 0,
  • "environment_id": "string",
  • "default": true,
  • "cm_host": "string",
  • "net_host": "string",
  • "x_host": "string",
  • "multi_region_compatible": true
}

Get a specific environment deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
zone_id
required
string

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "revision_received": 0,
  • "environment_id": "string",
  • "default": true,
  • "cm_host": "string",
  • "net_host": "string",
  • "x_host": "string",
  • "multi_region_compatible": true
}

Update a specific environment deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
zone_id
required
string
Request Body schema: application/json
name
string

Friendly name to identify the deployment zone

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_revision": "string",
  • "created_at": "string",
  • "updated_at": "string",
  • "name": "string",
  • "type": "kaleido",
  • "cloud": "aws",
  • "region": "us-east-2",
  • "revision_received": 0,
  • "environment_id": "string",
  • "default": true,
  • "cm_host": "string",
  • "net_host": "string",
  • "x_host": "string",
  • "multi_region_compatible": true
}

Delete a specific environment deployment zone

Authorizations:
bearer_token
path Parameters
consortia_id
required
string
environment_id
required
string
zone_id
required
string

Responses

Response samples

Content type
application/json
{
  • "errorMessage": "string"
}