Api Endpoint

CSOAI Article 50 marking evidenc

Art. 50 marking evidence: one signed pack for one generative output at a named URL, measured from its bytes. Detects C2PA and IPTC metadata only (C2PA manifest, assertion hashes, hard binding, claim signature; IPTC digitalSourceType); no watermark is read. States: DETECTED, NOT_DETECTED (not proof the output is unmarked) or UNCHECKABLE; never a legal determination. CSOAI is a C2PA member. Free unsigned preview; verification is free.

Open interactive test console

Offering

Provider
councilof.ai
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
Legal And Compliance
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://councilof.ai/api/art50/marking-evidence?url=https%3A%2F%2Fcouncilof.ai%2Fog-image.png
MIME type
application/json
First seen
2026-10-16T03:04:46.000Z
Last seen
Tags
article-50, c2pa, marking, measurement, X402, MCP

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0x212686404A7D1E1fD88F35eD6200c3aF7A78ae31"
  }
]

Observed health

Status
Healthy
Latest latency
1202 ms
Average latency
1106 ms
HTTP status
402
Last checked
Reachability
100% over 12 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET",
        "HEAD",
        "DELETE"
      ]
    },
    "queryParams": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "description": "Public URL of the generative output to measure (≤ 20 MiB); or POST the bytes"
        },
        "preview": {
          "type": "string",
          "description": "1 = free unsigned measurement"
        }
      },
      "required": [
        "url"
      ]
    }
  },
  "required": [
    "type",
    "method"
  ],
  "additionalProperties": false
}

Output schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string"
    },
    "example": {
      "type": "object"
    }
  },
  "required": [
    "type"
  ]
}