Tradeverifyd Transparency Log API
Auxillary resources for securing and analyzing supply chain artifacts
Auxillary resources for securing and analyzing supply chain artifacts
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/tradeverifyd-transparency-log-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: SCITT Transparency Service Transparency Log API
description: 'Secure statements regarding supply chain artifacts in an append only transparency log.
Obtain offline verifiable proof that an artifact was recorded in the log.
Query the log for statements about artifacts to build verifiable value chains.
'
version: 1.0.0
contact:
name: Tradeverifyd
url: https://github.com/tradeverifyd/transparency-service
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: http://127.0.0.1:56177
description: Local
tags:
- name: Transparency Log
description: Auxillary resources for securing and analyzing supply chain artifacts
paths:
/checkpoint:
get:
summary: Get Checkpoint Receipt
description: 'Get a scitt receipt for the last entry in the transparency log.
'
tags:
- Transparency Log
responses:
'200':
description: Checkpoint receipt retrieved successfully
headers:
Cache-Control:
schema:
type: string
example: public, max-age=60
content:
application/scitt-receipt+cose:
schema:
type: string
format: binary
description: CBOR-encoded COSE Sign1 receipt for the last entry
'500':
description: Failed to get checkpoint (log may be empty)
content:
text/plain:
schema:
type: string
/tile/{level}/{index}:
get:
summary: Get Merkle Tree Tile
description: 'Get a Merkle tree tile from the transparency log.
Supports C2SP tlog-tiles format with nested indices.
'
tags:
- Transparency Log
parameters:
- name: level
in: path
required: true
description: Merkle tree level (0-63)
schema:
type: integer
minimum: 0
maximum: 63
- name: index
in: path
required: true
description: Tile index (nested format like x001/x234/067)
schema:
type: string
responses:
'200':
description: Tile retrieved successfully
headers:
Cache-Control:
schema:
type: string
example: public, max-age=31536000, immutable
content:
application/octet-stream:
schema:
type: string
format: binary
description: Raw tile data (256 hashes × 32 bytes for full tiles)
'404':
description: Tile not found
content:
text/plain:
schema:
type: string
/tile/entries/{index}:
get:
summary: Get Entry Tile
description: 'Get an entry tile (bundle) from the transparency log.
Contains raw entry hashes for the specified tile index.
'
tags:
- Transparency Log
parameters:
- name: index
in: path
required: true
description: Entry tile index (nested format like x001/x234/067)
schema:
type: string
responses:
'200':
description: Entry tile retrieved successfully
headers:
Cache-Control:
schema:
type: string
example: public, max-age=31536000, immutable
content:
application/octet-stream:
schema:
type: string
format: binary
description: Raw entry tile data (up to 256 hashes × 32 bytes)
'404':
description: Entry tile not found
content:
text/plain:
schema:
type: string
/statements:
get:
summary: Query Statements
description: 'Query statement metadata with optional filters.
Returns JSON array of statement metadata.
'
tags:
- Transparency Log
parameters:
- name: iss
in: query
description: Filter by issuer URL
schema:
type: string
example: https://issuer.example.com
- name: sub
in: query
description: Filter by subject
schema:
type: string
- name: cty
in: query
description: Filter by content type
schema:
type: string
example: application/json
- name: typ
in: query
description: Filter by type
schema:
type: string
- name: limit
in: query
description: Maximum number of results (default 100, max 1000)
schema:
type: integer
minimum: 1
maximum: 1000
default: 100
- name: offset
in: query
description: Pagination offset
schema:
type: integer
minimum: 0
default: 0
responses:
'200':
description: Statements retrieved successfully
content:
application/json:
schema:
type: object
properties:
statements:
type: array
items:
$ref: '#/components/schemas/StatementMetadata'
limit:
type: integer
example: 100
offset:
type: integer
example: 0
total:
type: integer
example: 42
example:
statements:
- entry_id: 86
leaf_hash: 49bc8c5a970039e2ff0a015d8ed3a6a7db802352826d39c777d6dbe387b1a3df
iss: urn:supply-chain:quantum-chip-design
sub: urn:supply-chain:quantum-chip-design
cty: application/json
payload_hash_alg: -16
payload_hash: 6824c806d0ed25c150522992e0e5e982ed91e977e027c4c2c8078035d333e835
payload_location: https://quantum-chip-design.example/documents/memory-008.json
registered_at: '2025-10-19T15:34:56Z'
- entry_id: 85
leaf_hash: 775e591b66740ed8fbf69952cee0b3334f7acfd7d4e9ebf4e5c86c97bd4e516a
iss: urn:supply-chain:quantum-chip-design
sub: urn:supply-chain:quantum-chip-design
cty: application/json
payload_hash_alg: -16
payload_hash: 2109d7c92c98ab3a73cfcff16b28477736e753883233bc5970657b28e438da3e
payload_location: https://quantum-chip-design.example/documents/memory-007.json
registered_at: '2025-10-19T15:34:56Z'
limit: 100
offset: 0
total: 86
'500':
description: Failed to query statements
content:
text/plain:
schema:
type: string
post:
summary: Register Statement (Alternative)
description: 'Register a new COSE Sign1 statement in the transparency log.
Alternative endpoint to POST /entries with the same behavior.
Supports both application/cose and application/scitt-statement+cose content types.
'
tags:
- Transparency Log
security:
- bearerAuth: []
requestBody:
required: true
content:
application/cose:
schema:
type: string
format: binary
description: CBOR-encoded COSE Sign1 structure
application/scitt-statement+cose:
schema:
type: string
format: binary
description: CBOR-encoded COSE Sign1 SCITT statement
responses:
'201':
description: Statement registered successfully - returns COSE Sign1 receipt
content:
application/scitt-receipt+cose:
schema:
type: string
format: binary
description: CBOR-encoded COSE Sign1 receipt with Merkle inclusion proof
'400':
description: Invalid request (malformed COSE Sign1 or validation failure)
content:
text/plain:
schema:
type: string
'401':
description: Unauthorized (missing or invalid API key)
content:
text/plain:
schema:
type: string
'415':
description: Unsupported Media Type
content:
text/plain:
schema:
type: string
/statements/{entry_id}/receipt:
get:
summary: Get Receipt (Alternative)
description: 'Retrieve a transparency receipt for a registered statement.
Alternative endpoint to GET /entries/{entry_id} with the same behavior.
'
tags:
- Transparency Log
parameters:
- name: entry_id
in: path
required: true
description: Entry ID of the registered statement
schema:
type: integer
format: int64
example: 42
responses:
'200':
description: Receipt retrieved successfully
content:
application/scitt-receipt+cose:
schema:
type: string
format: binary
description: CBOR-encoded COSE Sign1 receipt with Merkle inclusion proof
'404':
description: Statement not found
content:
text/plain:
schema:
type: string
'400':
description: Invalid entry ID format
content:
text/plain:
schema:
type: string
components:
schemas:
StatementMetadata:
type: object
properties:
entry_id:
type: integer
format: int64
description: Unique entry ID in the log
example: 42
leaf_hash:
type: string
description: Hex-encoded leaf hash stored in the tile
example: a1b2c3d4...
iss:
type: string
description: Issuer URL
example: https://issuer.example.com
sub:
type: string
description: Subject (optional)
example: artifact-123
cty:
type: string
description: Content type (optional)
example: application/json
typ:
type: string
description: Type (optional)
example: application/example
payload_hash_alg:
type: integer
description: Hash algorithm identifier
example: -16
payload_hash:
type: string
description: Hex-encoded payload hash
example: 9f8e7d6c...
payload_location:
type: string
description: Payload location (optional)
example: https://example.com/payload
registered_at:
type: string
format: date-time
description: Registration timestamp (ISO 8601)
example: '2023-10-18T12:00:00Z'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: API key authentication using Bearer token