{
  "x402Version": 2,
  "id": 7696,
  "slug": "7696",
  "resource": "https://fractalai.net.co/api/x402/attest-training",
  "description": "Pay-per-Training-Provenance: an agent pays to seal the provenance of a dataset or training run — a C2PA-compatible manifest binding the dataset/artifact hash to a declared origin, served with a post-quantum ML-DSA-65 / Dilithium-3 (NIST FIPS 204) signature over the same canonical claim (manifest anchor: Dilithium-2). Built for EU AI Act Art. 10/53 training-data provenance. Privacy-preserving (only the hash is bound). x402-native.",
  "type": "http",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xC13789e82661635d9Cea38a53A0390CF9939ef4f",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "50000",
      "maxTimeoutSeconds": 300
    },
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xC13789e82661635d9Cea38a53A0390CF9939ef4f",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "50000",
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "bazaar": {
      "body": {
        "dataset_hash": "sha256hex",
        "model_id": "fane-1"
      },
      "bodyType": "json",
      "description": "Pay-per-Training-Provenance: an agent pays to seal the provenance of a dataset or training run — a C2PA-compatible manifest binding the dataset/artifact hash to a declared origin, served with a post-quantum ML-DSA-65 / Dilithium-3 (NIST FIPS 204) signature over the same canonical claim (manifest anchor: Dilithium-2). Built for EU AI Act Art. 10/53 training-data provenance. Privacy-preserving (only the hash is bound). x402-native.",
      "info": {
        "input": {
          "body": {
            "dataset_hash": "sha256hex",
            "model_id": "fane-1"
          },
          "bodyType": "json",
          "method": "POST",
          "type": "http"
        },
        "output": {
          "example": {
            "algorithm": "ml-dsa-65",
            "manifest_id": "…",
            "signature": "BASE64"
          },
          "type": "json"
        }
      },
      "method": "POST",
      "output": {
        "example": {
          "algorithm": "ml-dsa-65",
          "manifest_id": "…",
          "signature": "BASE64"
        },
        "schema": {
          "properties": {
            "algorithm": {
              "description": "ml-dsa-65",
              "type": "string"
            },
            "algorithm_label": {
              "description": "ML-DSA-65 / Dilithium-3 (NIST FIPS 204)",
              "type": "string"
            },
            "manifest": {
              "description": "The re-verifiable C2PA-compatible provenance manifest, signed with Dilithium-2 (NIST FIPS 204): { claim (content_hash, model_id, issuer, prompt_hash, created_at, ...), signature (base64 Dilithium-2), public_key, manifest_id }.",
              "type": "object"
            },
            "payment": {
              "description": "Settlement receipt (scheme, network, asset, txHash, payer, settled).",
              "type": "object"
            },
            "public_key": {
              "description": "Base64 ML-DSA-65 public key (1952 bytes) that verifies the served signature.",
              "type": "string"
            },
            "served_signature": {
              "description": "The served post-quantum proof: { algorithm, algorithm_label, digest, message, signed_message, signature, public_key, note } — offline-verifiable independently of the manifest.",
              "type": "object"
            },
            "signature": {
              "description": "Base64 ML-DSA-65 / Dilithium-3 (NIST FIPS 204) served signature (3309 bytes) over the 3-line, route-separated message FRACTALAI-x402-served-v1\\nx402-attest-training\\n<digest> (returned verbatim as signed_message), where digest = sha256(canonicalClaim(manifest.claim)) = manifest.manifest_id.",
              "type": "string"
            },
            "signed_message": {
              "description": "The EXACT bytes covered by signature: the 3 lines FRACTALAI-x402-served-v1\\nx402-attest-training\\n<digest>. Verify against these verbatim.",
              "type": "string"
            },
            "verify_at": {
              "description": "Endpoint to freely re-verify the Dilithium-2 manifest.",
              "type": "string"
            }
          },
          "required": [
            "manifest",
            "algorithm",
            "signature",
            "public_key"
          ],
          "type": "object"
        },
        "type": "json"
      },
      "route_key": "POST /api/x402/attest-training",
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "body": {
                "type": "object"
              },
              "bodyType": {
                "enum": [
                  "json",
                  "form-data",
                  "text"
                ],
                "type": "string"
              },
              "headers": {
                "additionalProperties": {
                  "type": "string"
                },
                "type": "object"
              },
              "method": {
                "enum": [
                  "POST",
                  "PUT",
                  "PATCH"
                ],
                "type": "string"
              },
              "queryParams": {
                "additionalProperties": {
                  "type": "string"
                },
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method",
              "bodyType",
              "body"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      },
      "serviceName": "FractalAI Training Provenance",
      "tags": [
        "training",
        "c2pa",
        "provenance",
        "ai-model",
        "ml-dsa"
      ],
      "type": "http"
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "fractalai.net.co",
  "lastUpdated": "2026-09-15T16:14:40.539Z",
  "quality": {
    "calls30d": 1,
    "uniquePayers30d": 1,
    "lastCalledAt": "2026-09-15T16:14:40.335Z"
  },
  "liveness": {},
  "verified": false,
  "featured": false,
  "provider": {
    "host": "fractalai.net.co",
    "manifest_name": "fractalai.net.co",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-09-18T22:00:31.484Z"
  }
}