Get a product certificate
const url = 'https://api.mintall.ai/api/v1/mc4p/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/certificate';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.mintall.ai/api/v1/mc4p/products/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/certificateGet the Mintall Certificate for Product (MC4P) data at the product level.
An active product (visible_at set) returns the full document. A product
that exists but is not active returns the identity-only document: the
mintall:images, mintall:trust, verification and proof
blocks are omitted, not null.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Responses
Section titled “Responses”Successful Response
Top-level product MC4P certificate in inline shape (JSON-LD style).
Attaches to the platform’s own Product node by productID + url
rather than restating commercial facts — it deliberately omits name and
description. The trust/verification/proof blocks appear only for an
active product; a not-active product yields the identity-only shape.
object
The provenance record an AI agent reads for this product.
Factual and seller-scoped: which domain published a signed, timestamped
provenance record for this product, and when. This is deliberately NOT an
“authorized seller” or authenticity claim — a self-issued authorization is
circular (the issuer vouching for the seller) and agents discount it. The
verification.summary states the scope; the proof block lets an agent
check the signature independently.
object
The canonical-source pointer for the document.
Visibility state (requested/active) is recorded on mc4p_access_events,
not here: it is internal plan state with no agent-actionable affordance on
the public cert. No snapshotAt either — the storefront app stamps that
at write time; the live endpoint omits it.
object
Schema.org/EntryPoint
object
object
object
Verifiable coverage counts only.
No self-scored aggregate: a score the issuer computes about itself is not independently checkable, so the block carries only the counts that the signed JWT also carries and that a verifier can re-check.
object
object
Schema.org/EntryPoint
object
Schema.org/WebAPI
object
object
object
object
Example
{ "@context": [ "https://schema.org", { "mintall": "https://mintall.ai/ns/" } ], "@type": "Product", "mintall:record": { "recordUrlMethod": "GET" }, "mintall:status": { "canonicalSource": { "@type": "EntryPoint", "description": "Canonical source for this certificate.", "httpMethod": "GET" } }, "mintall:images": [ { "@type": "ImageObject", "certification": { "@type": "ImageObject" } } ], "additionalProperty": [ { "@type": "PropertyValue" } ], "verification": { "canonicalSource": { "@type": "EntryPoint", "description": "Canonical source for this certificate.", "httpMethod": "GET" }, "verifyEndpoint": { "@type": "WebAPI", "name": "Certificate Verification API", "description": "Verify certificate authenticity and authorization.", "httpMethod": "POST" }, "mcp": { "tool": "verify_mintall_certificate" } }}Product not found or disabled.
Validation Error
object
object
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}