Verifier REST API

FastAPI surface for the OSS centralised verifier. Anyone can stand one up to re-validate proof-of-inference claims emitted by the TensorCash chain. /verify/* endpoints accept FlatBuffers payloads (plus /v1/verify/*/json variants for JSON-encoded requests).

32 個端點 · OpenAPI 3.1.0 · OpenAPI 規格(JSON)

/verify/* 端點接收 FlatBuffers 酬載(二進位 application/octet-stream)。/v1/verify/*/json 變體則接收 JSON,其結構與下方從 validation.schema.json 併入的 proof_* 結構描述相同。/verify/full、model、pow、quick、quick-smell 與 logits 涵蓋整個驗證器階梯;/verify/status/{hash_id} 用於輪詢非同步提交。

verifier-ladder/full

Full re-execution rung. Replay a deterministic inference end-to-end. Inline + async variants.

POST/v1/verify/full

Verify Full

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/full/json

Verify Full Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/full/request

Verify Full Request

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/full/request/submit

Verify Full Request Submit

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/model

Model-only rung. Verify that a model commit matches what was claimed.

POST/v1/verify/model

Verify Model

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/model/json

Verify Model Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/model/request

Verify Model Request

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/model/request/submit

Verify Model Request Submit

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/pow

Proof-of-work rung. Lightweight check that the block carried sufficient compute.

POST/v1/verify/pow

Verify Pow

Proof-only verification. Accepts MiningResponse, Proof, or ValidationRequest. Context-free by contract: no chain context is validated, the block precheck is not run, and every response form carries `result_type="proof_only" / context_bound=false`.

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/pow/json

Verify Pow Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/quick

Quick rung. Sampling-based check; cheaper than full, weaker than full.

POST/v1/verify/quick

Verify Quick

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/quick/json

Verify Quick Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/quick-smell

Quick-smell rung. Heuristic smell test for adversarial proofs.

POST/v1/verify/quick-smell

Verify Quick Smell

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/quick-smell/json

Verify Quick Smell Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—
x-prev-block-hashheaderstring | null—
x-merkle-rootheaderstring | null—
x-bitsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/quick-smell/request/submit

Verify Quick Smell Request Submit

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/logits

Logits rung. Cheapest rung — verifies a logits commitment without re-running inference.

POST/v1/verify/logits

Verify Logits

參數

名稱位置型別必填說明
detailsqueryboolean—Include failure details in response
acceptheaderstring | null—
x-verify-detailsheaderstring | null—

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/logits/json

Verify Logits Json

參數

名稱位置型別必填說明
detailsqueryboolean—
acceptheaderstring | null—
x-verify-detailsheaderstring | null—

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

verifier-ladder/challenge

Challenge protocol. Async-only — submit a challenge, retrieve result via /status.

POST/v1/verify/challenge/request

Verify Challenge Request

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/challenge/request/submit

Verify Challenge Request Submit

參數

名稱位置型別必填說明
acceptheaderstring | null—

請求主體

  • application/octet-stream string (binary)

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

status

Status polling for async submissions. One endpoint per ladder rung plus a generic by-hash and batch.

GET/v1/verify/status/{hash_id}

Get Verification Status

Search all types; return 200 (complete), 202 (pending), or 404.

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/verify/status/full/{hash_id}

Get Status Full

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/verify/status/model/{hash_id}

Get Status Model

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/verify/status/challenge/{hash_id}

Get Status Challenge

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/verify/status/quick-smell/{hash_id}

Get Status Quick Smell

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/verify/status/pow/{hash_id}

Get Status Pow

Proof-only status: always `result_type="proof_only"`, never a block result.

參數

名稱位置型別必填說明
hash_idpathstring是

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

POST/v1/verify/status/batch

Get Status Batch

Batch status polling — matches gateway contract: {completed, still_pending, waited_ms, server_ts}. Only items with actual in-flight/lifecycle state appear in still_pending.

請求主體

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

GET/v1/public/status/{hash_id}

Get Public Status

Public read-only status. Returns {"status": "NAN"} if not found. Note: no durable-storage fallback in the open-source build.

參數

名稱位置型別必填說明
hash_idpathstring是
verification_typequerystring | null—Filter by type

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

health

Liveness / readiness probes. /health and the kubernetes /healthz, /readyz.

GET/v1/verify/health

Health Check

回應

狀態說明主體
200Successful Response
  • application/json any

GET/health

Health

回應

狀態說明主體
200Successful Response
  • application/json any

GET/healthz

Healthz

回應

狀態說明主體
200Successful Response
  • application/json any

GET/readyz

Readyz

回應

狀態說明主體
200Successful Response
  • application/json any

verifier-ladder/batch-triage

POST/v1/verify/batch-triage

Verify Batch Triage

ADVISORY: which of these shares are worth a full verify? Returns a summary verdict for the batch. Per-share outcomes are emitted as Triage_Check / Triage_Clear / Triage_Error against each share's own hash_id (little-endian display hex, same as the Full endpoints), pollable via /v1/verify/status/batch with verification_type "triage". Triage_Clear means DEPRIORITISED, not verified good. A Triage_Check must still be confirmed with a real Full verification before any action.

請求主體

Body is a FlatBuffer-encoded ValidationRequest (or Proof / MiningResponse for /pow). FlatBuffers IDL + JSON Schema published at https://tensorcash.org/docs/schemas/.

回應

狀態說明主體
200Successful Response
  • application/json any
422Validation Error

結構描述

BatchTriageRequest

N shares to triage in one batched pass. Each entry of shares is a base64 ValidationRequest -- byte-identical to what you would POST to /verify/full for that share.

欄位型別必填說明
sharesstring[]是base64 ValidationRequest blobs
chunkinteger—shares per forward pass; 0 = worker default
rank_rationumber—flag above this x cohort median; 0 = default
bootstrapinteger—0 = worker default
wait_msinteger—

Body_verify_full_json_v1_verify_full_json_post

欄位型別必填說明
proof_b64string是

Body_verify_logits_json_v1_verify_logits_json_post

欄位型別必填說明
proof_b64string是

Body_verify_model_json_v1_verify_model_json_post

欄位型別必填說明
proof_b64string是

Body_verify_pow_json_v1_verify_pow_json_post

欄位型別必填說明
payload_b64string是

Body_verify_quick_json_v1_verify_quick_json_post

欄位型別必填說明
proof_b64string是

Body_verify_quick_smell_json_v1_verify_quick_smell_json_post

欄位型別必填說明
proof_b64string是

StatusBatchItem

欄位型別必填說明
hash_idstring是
verification_typestring是
batch_hash_idstring | null—

StatusBatchRequest

欄位型別必填說明
itemsStatusBatchItem[]是
wait_msinteger—

ValidationError

欄位型別必填說明
locstring | integer[]是
msgstring是
typestring是

proof_FloatArray

欄位型別必填說明
valuesnumber[]—

proof_UIntArray

欄位型別必填說明
valuesinteger[]—

proof_Proof

欄位型別必填說明
versioninteger—
tickinteger—
timestampinteger—
targetinteger[]—
vdfinteger[]—
hashinteger[]—
block_hashinteger[]—
header_prefixinteger[]—
is_solutionboolean—
model_identifierstring—
compute_precisionstring—
ipfs_cidstring—
extra_flagsstring—
temperaturenumber—
top_pnumber—
top_kinteger—
repetition_penaltynumber—
chosen_tokensinteger[]—
chosen_probsnumber[]—
sampling_unumber[]—
softmax_normalizersnumber[]—
prompt_tokensinteger[]—
pad_maskboolean[]—
topk_logitsproof_FloatArray[]—
topk_indicesproof_UIntArray[]—
logsumexp_statsproof_FloatArray[]—

proof_ValidationType

型別: "Quick" | "Quick_Smell" | "Full" | "Model" | "Challenge" | "Logits" | "BatchTriage"

proof_ResponseValue

型別: "Quick_OK" | "Quick_Fail" | "Quick_OK_Smell_OK" | "Quick_OK_Smell_Fail" | "Quick_Fail_Smell_OK" | "Quick_Fail_Smell_Fail" | "Full_Green" | "Full_Amber" | "Full_Red" | "Model_OK" | "Model_Fail" | "Challenge_OK" | "Challenge_Fail" | "Model_Pending_Review" | "Logits_OK" | "Logits_Fail" | "Triage_Check" | "Triage_Clear" | "Triage_Error"

proof_ValidationUnion

型別: "NONE" | "BlockValidation" | "ModelValidation" | "BatchValidation"

proof_BlockValidation

欄位型別必填說明
versioninteger—
hashinteger[]—
prev_block_hashinteger[]—
merkle_rootinteger[]—
timestampinteger—
bitsinteger—
nonceinteger—
pow_blob_hashinteger[]—
adjusted_bitsinteger—
pow_blobproof_Proof—
difficultyinteger—
heightinteger—
rulesetinteger—

proof_ModelValidation

欄位型別必填說明
model_namestring—
model_commitstring—
difficultyinteger—
cidstring—
extrastring—
txidinteger[]—
block_hashinteger[]—
block_heightinteger—

proof_BatchShare

欄位型別必填說明
hash_idinteger[]—
requestinteger[]—

proof_BatchValidation

欄位型別必填說明
sharesproof_BatchShare[]—
chunkinteger—
rank_rationumber—
bootstrapinteger—

proof_ValidationResponse

欄位型別必填說明
hash_identifierinteger[]—
enum_responseproof_ResponseValue—

proof_BlockHeader

欄位型別必填說明
req_idinteger—
versioninteger—
prev_block_hashinteger[]—
merkle_rootinteger[]—
timestampinteger—
bitsinteger—
heightinteger—
stepbindinteger—

proof_MiningResponse

欄位型別必填說明
req_idinteger—
nonceinteger—
adjusted_bitsinteger—
pow_blob_hashinteger[]—
difficultyinteger—
pow_blobproof_Proof—
completion_idstring—