For the complete documentation index, see llms.txt. This page is also available as Markdown.

Tools

Return a list of all tools.

get

Returns all tools. Add Api-Version: 2 header to use search and tag filters. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
pageIndexnumberOptional

The number of pages to skip before starting to collect the result set

Example: 0
pageSizenumberOptional

The numbers of items to return

Example: 20
searchstringOptional

Search

Example: text
tagstringOptional

Tag

Example: text
Header parameters
Api-VersionstringRequired

Use "2" for this endpoint (supports search, tag)

Example: 2
Responses
200

Successful operation. Example shows V2 response format (no uuid, no hash).

application/json
get
/tools

Creates a new tool (sync).

post

Creates a new tool. Waits for completion and returns the created tool. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestringOptional

Tool display name

Example: Tool name
descriptionstringOptional

Tool description

Example: Description
Responses
post
/tools

Creates a new tool (async).

post

Creates a new tool asynchronously. Returns task ID for progress tracking. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
namestringOptional

Tool display name

Example: Tool name
descriptionstringOptional

Tool description

Example: Description
Responses
post
/tools/push

Retrieves tool configuration.

get

Retrieves tool configuration for the specified tool ID. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Successful operation.

application/json
idstringRequiredExample: 69aeb71ef8c5b278e3bab4e5
uuidstringRequiredExample: 9db028d2-03ad-4d49-a178-cf4b67f8c147
namestringRequiredExample: Tool name
descriptionstringRequiredExample: Description
statusstring · enumRequiredExample: DRAFTPossible values:
creatorstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
ownerstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
topicIdstringRequiredExample: 0.0.6046379
messageIdstring · nullableOptional

Message ID (for PUBLISHED tools only; omitted or null for DRAFT)

Example: 1773670900.819264517
codeVersionstringRequiredExample: 1.0.0
createDatestringRequiredExample: 2026-03-03T17:25:53.312Z
updateDatestringRequired

Last update date

Example: 2026-03-03T17:25:53.312Z
configFileIdstringRequired

Config file ID (internal)

tagsTopicIdstringOptional

Tags topic ID (for PUBLISHED tools only)

contentFileIdstringOptional

File id of the original tool zip (imported from IPFS or publish flow). Present for PUBLISHED tools.

hashstringOptional

Hash (for PUBLISHED tools only)

toolsobject[]Required

Referenced sub-tools: { name, version?, topicId, messageId }

versionstring · nullableOptional

Published tool version (e.g. 1.0.0); null or omitted when not published

Example: 1.0.0
get
/tools/{id}

Updates tool configuration.

put

Updates tool configuration for the specified tool ID. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Body
idstringRequiredExample: 69aeb71ef8c5b278e3bab4e5
uuidstringRequiredExample: 9db028d2-03ad-4d49-a178-cf4b67f8c147
namestringRequiredExample: Tool name
descriptionstringRequiredExample: Description
statusstring · enumRequiredExample: DRAFTPossible values:
creatorstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
ownerstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
topicIdstringRequiredExample: 0.0.6046379
messageIdstring · nullableOptional

Message ID (for PUBLISHED tools only; omitted or null for DRAFT)

Example: 1773670900.819264517
codeVersionstringRequiredExample: 1.0.0
createDatestringRequiredExample: 2026-03-03T17:25:53.312Z
updateDatestringRequired

Last update date

Example: 2026-03-03T17:25:53.312Z
configFileIdstringRequired

Config file ID (internal)

tagsTopicIdstringOptional

Tags topic ID (for PUBLISHED tools only)

contentFileIdstringOptional

File id of the original tool zip (imported from IPFS or publish flow). Present for PUBLISHED tools.

hashstringOptional

Hash (for PUBLISHED tools only)

toolsobject[]Required

Referenced sub-tools: { name, version?, topicId, messageId }

versionstring · nullableOptional

Published tool version (e.g. 1.0.0); null or omitted when not published

Example: 1.0.0
Responses
put
/tools/{id}

Deletes the tool with the provided tool ID. Only users with the Standard Registry role are allowed to make the request.

delete

Deletes the tool.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Successful operation.

application/json
booleanOptional
delete
/tools/{id}

Publishes the tool onto IPFS.

put

Publishes the tool with the specified (internal) tool ID onto IPFS, sends a message featuring its IPFS CID into the corresponding Hedera topic. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Body
toolVersionstringRequiredExample: 1.0.0
Responses
200

Publish result (HTTP 200). If isValid is true, the tool was published. If isValid is false, the tool stays DRAFT and was not published — see errors.

application/json
isValidbooleanRequired

Whether validation passed (true = tool published successfully)

put
/tools/{id}/publish

Publishes the tool onto IPFS.

put

Publishes the tool with the specified (internal) tool ID onto IPFS, sends a message featuring its IPFS CID into the corresponding Hedera topic. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Body
toolVersionstringRequiredExample: 1.0.0
Responses
200

Successful operation.

application/json
taskIdstringRequired

Task Id

Example: 9db028d2-03ad-4d49-a178-cf4b67f8c147
expectationnumberRequired

Expected count of task phases

Example: 8
actionstringRequired

Task action

Example: Create tool
userIdstringRequired

User Id

Example: 69bcfd90c98df6ceb05e8a78
put
/tools/{id}/push/publish

Dry run tool.

put

Validates the tool config; when valid, dry run starts (tool state updated server-side). Returns isValid and errors (no full tool body). Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Validation result (HTTP 200). Dry run started when isValid is true; dry run not started when isValid is false (see errors.blocks and nested messages).

application/json
isValidbooleanRequired

Whether the tool config passed validation (true = dry run started; false = dry run not started)

put
/tools/{id}/dry-run

Return tool to draft (editing).

put

Sets the tool to DRAFT when allowed (not already DRAFT, not PUBLISHED, config present, not referenced by a policy in dry run). Response body is JSON true. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Successful operation. Response body is the JSON boolean true.

application/json
booleanOptional
put
/tools/{id}/draft

Validates selected tool.

post

Validates selected tool. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
idstringRequiredExample: 69aeb71ef8c5b278e3bab4e5
uuidstringRequiredExample: 9db028d2-03ad-4d49-a178-cf4b67f8c147
namestringRequiredExample: Tool name
descriptionstringRequiredExample: Description
statusstring · enumRequiredExample: DRAFTPossible values:
creatorstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
ownerstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
topicIdstringRequiredExample: 0.0.6046379
messageIdstring · nullableOptional

Message ID (for PUBLISHED tools only; omitted or null for DRAFT)

Example: 1773670900.819264517
codeVersionstringRequiredExample: 1.0.0
createDatestringRequiredExample: 2026-03-03T17:25:53.312Z
updateDatestringRequired

Last update date

Example: 2026-03-03T17:25:53.312Z
configFileIdstringRequired

Config file ID (internal)

tagsTopicIdstringOptional

Tags topic ID (for PUBLISHED tools only)

contentFileIdstringOptional

File id of the original tool zip (imported from IPFS or publish flow). Present for PUBLISHED tools.

hashstringOptional

Hash (for PUBLISHED tools only)

toolsobject[]Required

Referenced sub-tools: { name, version?, topicId, messageId }

versionstring · nullableOptional

Published tool version (e.g. 1.0.0); null or omitted when not published

Example: 1.0.0
Responses
200

Validation outcome (HTTP 200). results is ValidationErrors-style output (blocks, tools, common errors, aggregate isValid). tool echoes the submitted tool.

application/json
post
/tools/validate

Return tool and its artifacts in a zip file format for the specified tool.

get

Returns a zip file containing the published tool and all associated artifacts, i.e. schemas and VCs. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Binary ZIP archive (Content-Type: application/zip, Content-Disposition: attachment). Not JSON.

application/zip
string · binaryOptional
get
/tools/{id}/export/file

Return tool identity and Hedera message id for export.

get

Returns id, uuid, name, description, messageId, owner. messageId is set when the tool is published to the topic; for DRAFT / dry-run it is null. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Tool ID

Example: 69aeb71ef8c5b278e3bab4e5
Responses
200

Tool export metadata (JSON).

application/json
idstringRequired

Tool ID (internal)

uuidstringRequired
namestringRequired
descriptionstringRequired
messageIdstring · nullableRequired

Hedera topic message id when published; null for DRAFT / not yet published

ownerstringRequired
get
/tools/{id}/export/message

Preview tool package from a Hedera message (IPFS ZIP).

post

Loads the tool ZIP from IPFS via messageId, parses tool.json, schemas/*, tags/*, tools/*, then adds messageId and toolTopicId from the message. Does not persist to the DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
messageIdstringRequired

Hedera topic message id

Responses
200

Parsed archive components plus message metadata. schemas entries are full schema records in production; the example lists all metadata fields with document and context as empty objects (omitted payload).

application/json
schemasobject[]Required

Schema entities parsed from schemas/* in the archive (full Schema objects with document, context, …)

tagsobject[]Required

Tag entities parsed from tags/* in the archive

messageIdstringOptional

Present only for POST /tools/import/message/preview — same as request messageId. Omitted for file-based preview.

toolTopicIdstringOptional

Present only for message-based preview — topic id from the Hedera tool message. Omitted for file-based preview.

post
/tools/import/message/preview

Imports new tool from IPFS.

post

Imports new tool and all associated artifacts from IPFS into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
messageIdstringRequired

Hedera topic message id

Responses
post
/tools/import/message

Preview tool package from an uploaded *.tool file.

post

Parses the uploaded tool archive (*.tool, ZIP format; tool.json, schemas/*, tags/*, tools/*) without persisting. Shape matches message preview; messageId / toolTopicId may be absent when not sourced from a Hedera message. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
string · binaryOptional
Responses
200

Parsed archive components. Same structure as POST /tools/import/message/preview; the example matches that response shape (document / context empty in schemas).

application/json
schemasobject[]Required

Schema entities parsed from schemas/* in the archive (full Schema objects with document, context, …)

tagsobject[]Required

Tag entities parsed from tags/* in the archive

messageIdstringOptional

Present only for POST /tools/import/message/preview — same as request messageId. Omitted for file-based preview.

toolTopicIdstringOptional

Present only for message-based preview — topic id from the Hedera tool message. Omitted for file-based preview.

post
/tools/import/file/preview

Imports new tool from a *.tool file.

post

Imports new tool and all associated artifacts, such as schemas and VCs, from the provided *.tool file (ZIP format) into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
string · binaryOptional
Responses
post
/tools/import/file

Imports new tool from a *.tool file.

post

Imports new tool and all associated artifacts, such as schemas and VCs, from the provided *.tool file (ZIP format) into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
filestring · binaryRequired

Tool archive (*.tool, ZIP format).

metadatastring · binary · nullableOptional

Optional JSON file (for example metadata.json) with content like { "tools": { "1706867530.884259218": "1774367941.594676930" } }.

Responses
post
/tools/import/file-metadata

Imports new tool from a *.tool file.

post

Imports new tool and all associated artifacts, such as schemas and VCs, from the provided *.tool file (ZIP format) into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
string · binaryOptional
Responses
post
/tools/push/import/file

Imports new tool from a *.tool file.

post

Imports new tool and all associated artifacts, such as schemas and VCs, from the provided *.tool file (ZIP format) into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
filestring · binaryRequired

Tool archive (*.tool, ZIP format).

metadatastring · binary · nullableOptional

Optional JSON file (for example metadata.json) with content like { "tools": { "1706867530.884259218": "1774367941.594676930" } }.

Responses
post
/tools/push/import/file-metadata

Imports new tool from IPFS.

post

Imports new tool and all associated artifacts from IPFS into the local DB. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
messageIdstringRequired

Hedera topic message id

Responses
post
/tools/push/import/message

Return a list of tools.

get

Returns tools menu. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
200

Tools menu.

application/json
idstringRequiredExample: 69aeb71ef8c5b278e3bab4e5
hashstringRequiredExample: GcDE9NsPJc7oCZvSVJySCZHxTxvjc3ZAMgtKozP1r1Eh
namestringRequiredExample: Tool 03
descriptionstringRequired
ownerstringRequiredExample: did:hedera:testnet:Cvzp5kKVUuipBCQjcF54fBjdicvaKsB8zHeQ6Qq22U2Z_0.0.8200599
topicIdstringRequiredExample: 0.0.6046379
messageIdstringRequiredExample: 1773670900.819264517
get
/tools/menu/all

Checks the availability of the tool.

get

Checks the availability of the tool. Only users with the Standard Registry role are allowed to make the request.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
messageIdstringRequired

Tool message ID

Example: 1709106946.913157840
Responses
200

Availability of the tool.

application/json
booleanOptional
get
/tools/check/{messageId}

Last updated