Create new user with username and password credentials
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
username required | any username of a new user |
hashed_password required | any Hashed password to be used for user authentication |
{- "username": "alice@acme.com",
- "hashed_password": "F4AABE0B40C9ABB8B6FD2EEACB39C965"
}
{- "message": "User created successfully",
- "data": {
- "user_id": "string",
- "username": "string"
}
}
Authenticates a user with username and password credentials
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
username required | any username of user |
hashed_password required | any Hashed password to be used for user authentication |
{- "username": "alice@acme.com",
- "hashed_password": "8945622435187243046536949706b5272644c71336c7254563679727565494b376d4b3554696b734662685962652f6v52562e437a70462f6552489c8b"
}
{- "message": "Successful login",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4",
- "token": "Biome:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiZjM1YWFjYzEtYTljZC00ZWRhLWI2ZDAtMmVmYWRkZjBjOGE0IiwiaXNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiZjM1YWFjYzEtYTljZC00ZWRhLWI2ZDAtMmVmYWRkZjBjOGE0IiwiaXNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc"
}
Removes access tokens associated with a user
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "User successfully logged out"
}
Issues a new access token
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
refresh_token required | any a refresh token issues by biome |
{- "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiZjM1YWFjYzEtYTljZC00ZWRhLWI2ZDAtMmVmYWRkZjBjOGE0IiwiaXNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc"
}
{- "token": "Biome:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoiZjM1YWFjYzEtYTljZC00ZWRhLWI2ZDAtMmVmYWRkZjBjOGE0IiwiaXNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc"
}
Verifies a user with username and password credentials
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
username required | any username of user |
hashed_password required | any Hashed password to be used for user authentication |
{- "username": "alice@acme.com",
- "hashed_password": "8945622435187243046536949706b5272644c71336c7254563679727565494b376d4b3554696b734662685962652f6v52562e437a70462f6552489c8b"
}
{- "message": "Successful verification",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
Lists all users
This endpoint requires the permission "biome.user.read".
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- {
- "username": "alice@acme.com",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
]
Fetch a user by ID
This endpoint requires the permission "biome.user.read".
user_id required | string Example: f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4 ID of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "username": "alice@acme.com",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
Update a user
This endpoint requires the permission "biome.user.write".
user_id required | string Example: f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4 ID of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
username required | string Existing username of user |
hashed_password required | string Hashed password to be used for user authentication |
new_password | string Hash of the new password to be used for user authentication |
Array of objects (BiomeNewUserKey) |
{- "username": "alice@acme.com",
- "hashed_password": "8945622435187243046536949706b5272644c71336c7254563679727565494b376d4b3554696b734662685962652f6v52562e437a70462f6552489c8b"
}
{- "message": "Credentials and key updated successfully",
- "data": [
- {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
]
}
Delete a user
This endpoint requires the permission "biome.user.write".
user_id required | string Example: f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4 ID of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "User deleted successfully"
}
List all user profiles
This endpoint requires the permission "biome.profile.read".
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- {
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4",
- "subject": "129367690558975733497",
- "name": "Alice Foo",
- "given_name": "Alice",
- "family_name": "Foo",
- "email": "alice@gmail.com",
}
]
Fetch a profile by ID
This endpoint requires the permission "biome.profile.read".
user_id required | string Example: f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4 ID of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4",
- "subject": "129367690558975733497",
- "name": "Alice Foo",
- "given_name": "Alice",
- "family_name": "Foo",
- "email": "alice@gmail.com",
}
Get the profile of the authenticated user
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4",
- "subject": "129367690558975733497",
- "name": "Alice Foo",
- "given_name": "Alice",
- "family_name": "Foo",
- "email": "alice@gmail.com",
}
List keys of a user
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
]
Replace all keys for the user
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
display_name | string Display name for key |
encrypted_private_key | string Encrypted private key |
public_key | string Public key |
user_id | string Internal unique identifier for the user |
[- {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
]
{- "message": "Keys replaced successfully"
}
Update a key's display name
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
public_key required | string Public key |
new_display_name required | string Updated display name for the key |
{- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "new_display_name": "Admin key pair"
}
{- "message": "Key updated successfully"
}
Add a new key for user
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
display_name | string Display name for key |
encrypted_private_key | string Encrypted private key |
public_key | string Public key |
user_id | string Internal unique identifier for the user |
{- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
{- "message": "Key added successfully",
- "data": {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
}
Fetch key of a user
public_key required | string Example: 026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118 Public key of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
}
Delete key of a user
public_key required | string Example: 026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118 Public key of the user |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "User deleted successfully",
- "data": {
- "display_name": "Biome Admin Key",
- "encrypted_private_key": "XNzIjoic2VsZi1pc3N1ZWQiLCJleHAiOjE1ODAyMzkyMjh9.P8hA0ru_xriYX7qryl08ZEp86t5HD_AEVPEUXY70Ehc",
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
}
This endpoint can be used to view all of the circuit proposals that the node is a proposed member of. If a circuit management type is provided via the "management_type" query parameter, only circuit proposals that have the given circuit management type will be returned. If a node ID is provided via the "member" query parameter, only circuit proposals that have the given node as a member will be returned. If no filter is provided, all of the node's circuit proposals will be returned.
This endpoint requires the permission "circuit.read".
offset | integer Default: 0 paging offset |
limit | integer Default: 100 maximum number of items to return (max 100) |
management_type | string Only show proposed circuits matching the given circuit management type |
member | string Only show proposed circuits that have a member with the given node ID |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": [
- {
- "proposal_type": "Create",
- "circuit_id": "01234-ABCDE",
- "circuit_hash": "8ce518770b962429a953b10220905ac9adf86a855f0b085695f444edf991b8ca",
- "circuit": {
- "circuit_id": "01234-ABCDE",
- "members": [
- {
- "node_id": "alpha-node-000",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118"
}
], - "roster": [
- {
- "service_id": "abcd",
- "service_type": "scabbard",
- "node_id": "alpha-node-000",
- "arguments": [
- [
- "string",
- "string"
]
]
}
], - "management_type": "gameroom",
- "application_metadata": "string",
- "comments": "string",
- "display_name": "string",
- "circuit_version": 0,
- "circuit_status": "Active"
}, - "votes": [
- {
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "vote": "Accept",
- "voter_node_id": "alpha-node-000"
}
], - "requester": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "requester_node_id": "alpha-node-000"
}
], - "paging": {
- "current": "/registry/nodes?offset=10&limit=10",
- "offset": 10,
- "limit": 10,
- "total": 50,
- "first": "/registry/nodes?offset=0&limit=10",
- "prev": "/registry/nodes?offset=0&limit=10",
- "next": "/registry/nodes?offset=20&limit=10",
- "last": "/registry/nodes?offset=40&limit=10"
}
}
This endpoint can be used to view a specific circuit proposal that the node is a proposed member of.
This endpoint requires the permission "circuit.read".
circuit_id required | string Circuit ID of the proposal to fetch |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "proposal_type": "Create",
- "circuit_id": "01234-ABCDE",
- "circuit_hash": "8ce518770b962429a953b10220905ac9adf86a855f0b085695f444edf991b8ca",
- "circuit": {
- "circuit_id": "01234-ABCDE",
- "members": [
- {
- "node_id": "alpha-node-000",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118"
}
], - "roster": [
- {
- "service_id": "abcd",
- "service_type": "scabbard",
- "node_id": "alpha-node-000",
- "arguments": [
- [
- "string",
- "string"
]
]
}
], - "management_type": "gameroom",
- "application_metadata": "string",
- "comments": "string",
- "display_name": "string",
- "circuit_version": 0,
- "circuit_status": "Active"
}, - "votes": [
- {
- "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "vote": "Accept",
- "voter_node_id": "alpha-node-000"
}
], - "requester": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118",
- "requester_node_id": "alpha-node-000"
}
Send circuit management payload in bytes to admin service
This endpoint requires the permission "circuit.write".
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "DatabaseError({description})"
}
Register the handler for a circuit management type
This endpoint requires the permission "circuit.read".
type required | string The circuit management type is the type of circuit the handler will manage |
last | integer Default: 0 A timestamp in milliseconds from the Unix Epoch, indicating the last received event. |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "status": "OK",
- "circuit_management_type": "gameroom",
- "error_reason": "string"
}
This endpoint can be used to view all or some of the circuits that the
node is a member of. If a node ID is provided via the "filter" query
parameter, only circuits that have the given node ID as a member will be
returned. If a circuit status is provided via the "status" query
parameter, only circuits that have the given circuit status will be
returned; if no filter is provided, all of the node's Active
circuits
will be returned.
This endpoint requires the permission "circuit.read".
offset | integer Default: 0 paging offset |
limit | integer Default: 100 maximum number of items to return (max 100) |
filter | string Node ID that must be present in the returned circuits |
status | string Circuit status of the returned circuits |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": [
- {
- "id": "01234-ABCDE",
- "members": [
- {
- "node_id": "alpha-node-000",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118"
}
], - "roster": [
- {
- "service_id": "abcd",
- "service_type": "scabbard",
- "node_id": "alpha-node-000"
}
], - "management_type": "gameroom",
- "display_name": "string",
- "circuit_status": "Active"
}
], - "paging": {
- "current": "/registry/nodes?offset=10&limit=10",
- "offset": 10,
- "limit": 10,
- "total": 50,
- "first": "/registry/nodes?offset=0&limit=10",
- "prev": "/registry/nodes?offset=0&limit=10",
- "next": "/registry/nodes?offset=20&limit=10",
- "last": "/registry/nodes?offset=40&limit=10"
}
}
This endpoint can be used to view a specific circuit that the node is a member of.
This endpoint requires the permission "circuit.read".
circuit_id required | string ID of the circuit to fetch |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "id": "01234-ABCDE",
- "members": [
- {
- "node_id": "alpha-node-000",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "public_key": "026c889058c2d22558ead2c61b321634b74e705c42f890e6b7bc2c80abb4713118"
}
], - "roster": [
- {
- "service_id": "abcd",
- "service_type": "scabbard",
- "node_id": "alpha-node-000"
}
], - "management_type": "gameroom",
- "display_name": "string",
- "circuit_status": "Active"
}
This endpoint can be used to add a new node to the Splinter registry. The node must be valid (see the Splinter registry documentation for details on node validity).
This endpoint requires the permission "registry.write".
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
identity | string |
endpoints | Array of strings |
display_name | string |
keys | Array of strings |
metadata | object |
{- "identity": "node-123123-asdf",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "display_name": "Cargill - Node 1",
- "keys": [
- "03e0e5086beffc640ec0d149d4f1197fdde0f338afac774541831281c6fd91cbe0"
], - "metadata": {
- "company": "Cargill",
- "status": "Up"
}
}
{- "message": "DatabaseError({description})"
}
This endpoint can be used to view all or some of the nodes in the registry. If metadata filters are provided via the "filter" query parameter, only nodes that match the given filters will be returned. See the Splinter registry documentation for details on metadata filters.
This endpoint requires the permission "registry.read".
offset | integer Default: 0 paging offset |
limit | integer Default: 100 maximum number of items to return (max 100) |
filter | string Example: filter=%7B%22company%22%3A%5B%22%3D%22%2C%22Cargill%22%5D%7D url-encodeded stringified JSON containing property filters on the node's metadata properties in the format {METADATA_PROPERTY:[{"operator":OPERATOR,"value":VALUE}]} |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": [
- {
- "identity": "node-123123-asdf",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "display_name": "Cargill - Node 1",
- "keys": [
- "03e0e5086beffc640ec0d149d4f1197fdde0f338afac774541831281c6fd91cbe0"
], - "metadata": {
- "company": "Cargill",
- "status": "Up"
}
}
], - "paging": {
- "current": "/registry/nodes?offset=10&limit=10",
- "offset": 10,
- "limit": 10,
- "total": 50,
- "first": "/registry/nodes?offset=0&limit=10",
- "prev": "/registry/nodes?offset=0&limit=10",
- "next": "/registry/nodes?offset=20&limit=10",
- "last": "/registry/nodes?offset=40&limit=10"
}
}
This endpoint can be used to view a specific nodes in the registry.
This endpoint requires the permission "registry.read".
identity required | string identity of node to fetch |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": {
- "identity": "node-123123-asdf",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "display_name": "Cargill - Node 1",
- "keys": [
- "03e0e5086beffc640ec0d149d4f1197fdde0f338afac774541831281c6fd91cbe0"
], - "metadata": {
- "company": "Cargill",
- "status": "Up"
}
}
}
This endpoint can be used to add a new node to the registry, or replace an existing node. When replacing an existing node, the node identity cannot be changed. This action is idempotent.
This endpoint requires the permission "registry.write".
identity required | string identity of node to add/replace |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
identity | string |
endpoints | Array of strings |
display_name | string |
keys | Array of strings |
metadata | object |
{- "identity": "node-123123-asdf",
- "endpoints": [
- "tcps://12.0.0.123:8431"
], - "display_name": "Cargill - Node 1",
- "keys": [
- "03e0e5086beffc640ec0d149d4f1197fdde0f338afac774541831281c6fd91cbe0"
], - "metadata": {
- "company": "Cargill",
- "status": "Up"
}
}
{- "message": "DatabaseError({description})"
}
This endpoint can be used to remove a node from the registry.
This endpoint requires the permission "registry.write".
identity required | string identity of node to delete |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "DatabaseError({description})"
}
This endpoint can be used to submit batches to a Scabbard service. The body of the request must be a list of valid Sabre batches. If the batches are submitted successfully, the response will contain a link for checking the status of the submitted batches.
This endpoint requires the permission "scabbard.write".
circuit required | string Circuit the targeted service belongs to |
service_id required | string ID of the targeted service |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "link": "/scabbard/abcde-01234/ABCD/batch_statuses?ids=6ff35474a572087e08fd6a54d563bd8172951b363e5c9731f1a40a855e14bba45dac515364a08d8403f4fb5d4a206174b7f63c29e4f4e425dc71b95494b8a798"
}
This endpoint can be used to check the status of one or more batches
that were submitted to a Scabbard service. The IDs of the batches to
check should be specified with the ids
query parameter. The wait
query parameter requests that the server wait for the given number of
seconds for the batches to be committed; however, this wait time is not
guaranteed.
This endpoint requires the permission "scabbard.read".
circuit required | string Circuit the targeted service belongs to |
service_id required | string ID of the targeted service |
ids required | string Comma-separated list of batch IDs |
wait | integer Default: 300 Time (in seconds) to wait for batches to be committed. If not provided, the server will return the batch statuses immediately. If the parameter is provided without a value, the default time (300 seconds) will be used. |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- {
- "id": "6ff35474a572087e08fd6a54d563bd8172951b363e5c9731f1a40a855e14bba45dac515364a08d8403f4fb5d4a206174b7f63c29e4f4e425dc71b95494b8a798",
- "status": {
- "statusType": "Unknown",
- "message": [
- {
- "transaction_id": "f4e147ff464013deccb3e68bb8619beffb29ff86b401257c93bcf8ef76d7ca173fa84b4f4a58414ad2d00a2c9f810cbb726e01cd26ebd44720239d9d35853099",
- "error_message": "Wasm contract returned invalid transaction: xo, 0.3.3",
- "error_data": [
- 0
]
}
]
}
}
]
This endpoint can be used to fetch a list of entries from a Scabbard
service's state. The entries can be filtered using an address prefix
provided with the prefix
query parameter.
This endpoint requires the permission "scabbard.read".
circuit required | string Circuit the targeted service belongs to |
service_id required | string ID of the targeted service |
prefix | string Example: prefix=00ec01 An address prefix for filtering state entries. If no prefix is specified, all state entries will be returned. |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- {
- "address": "string",
- "value": [
- 0
]
}
]
This endpoint can be used to fetch the value at a specific address in a Scabbard service's state.
This endpoint requires the permission "scabbard.read".
circuit required | string Circuit the targeted service belongs to |
service_id required | string ID of the targeted service |
address required | string Example: 000000a87cb5eafdcca6a814e4add97c4b517d3c530c2f44b31d18e3b0c44298fc1c14 The address of the value to retrieve from state |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
[- 0
]
Provides a redirect to the node's configured OAuth provider to authenticate the user.
redirect_url | string The URL the client will be redirected to once the OAuth
authentication process has been completed. If this parameter is not
provided, Splinter will attempt to retrieve the |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "DatabaseError({description})"
}
Receives an authorization code from the OAuth provider to create an access token for the user. Redirects to a URL provided by the client when the OAuth authentication process was initiated.
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "DatabaseError({description})"
}
Removes a user's access and refresh tokens from storage.
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "message": "User successfully logged out"
}
Lists all OAuth users
This endpoint requires the permission "oauth.user.read".
offset | integer Default: 0 paging offset |
limit | integer Default: 100 maximum number of items to return (max 100) |
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "data": [
- {
- "subject": "129367690558975733497",
- "user_id": "f35aacc1-a9cd-4eda-b6d0-2efaddf0c8a4"
}
], - "paging": {
- "current": "/registry/nodes?offset=10&limit=10",
- "offset": 10,
- "limit": 10,
- "total": 50,
- "first": "/registry/nodes?offset=0&limit=10",
- "prev": "/registry/nodes?offset=0&limit=10",
- "next": "/registry/nodes?offset=20&limit=10",
- "last": "/registry/nodes?offset=40&limit=10"
}
}
Used to check if server is successfully running
This endpoint requires the permission "status.read".
Authorization required | string Examples:
The client's authorization, which the server resolves to an identity. Currently supports Biome JWT (if Biome credentials is enabled), Cylinder JWT, and OAuth2 bearer tokens. |
SplinterProtocolVersion | integer Example: 2 The protocol version which the client can understand. If not provided, the node will respond using its latest protocol version. |
{- "version": "0.7.1",
- "node_id": "node-009",
- "display_name": "Cargill Node 009",
- "service_endpoint": "tcp://foo.bar.biz",
- "network_endpoints": [
- "tcp://foo.bar.biz"
], - "advertised_endpoints": [
- "tcp://foo.bar.biz"
]
}