com.linkedclaims.claim

A verifiable claim about any URI-addressable subject.

Details · record, key tid
Kindrecord
Record keytid
Authoritylinkedclaims.com
Indexed
cid bafyreiahb2ed2x5sqdm4mgbf5axqdctap7rrwvewcycbrsglzf5jsactay

Checks

Valid
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "claimSource": {
      "description": "Where this claim comes from. A source can be a person (DID, URL), a website, a document, or any URI-addressable origin. Based on the cooperation.org/credentials/v1 ClaimSource vocabulary.",
      "properties": {
        "author": {
          "description": "Original author of the evidence (if different from claim signer).",
          "format": "uri",
          "type": "string"
        },
        "curator": {
          "description": "Entity that curated/surfaced this evidence.",
          "format": "uri",
          "type": "string"
        },
        "dateObserved": {
          "description": "When the evidence was observed/collected.",
          "format": "datetime",
          "type": "string"
        },
        "digestMultibase": {
          "description": "Multibase-encoded hash of the evidence content for integrity verification, per W3C VC Data Model 2.0 (e.g., zQm...).",
          "type": "string"
        },
        "howKnown": {
          "description": "How the signer knows this claim to be true.",
          "knownValues": [
            "FIRST_HAND",
            "SECOND_HAND",
            "WEB_DOCUMENT",
            "VERIFIED_LOGIN",
            "SIGNED_DOCUMENT",
            "BLOCKCHAIN",
            "RESEARCH",
            "OPINION",
            "OTHER"
          ],
          "type": "string"
        },
        "uri": {
          "description": "URI of the evidence (HTTPS URL, IPFS CID, AT-URI, etc.).",
          "format": "uri",
          "type": "string"
        }
      },
      "type": "object"
    },
    "embeddedProof": {
      "description": "Cryptographic proof from external signing methods. Allows claims signed via MetaMask, aca-py, Digital Bazaar, etc. to be published on ATProto while preserving the original signer identity.",
      "properties": {
        "created": {
          "description": "When the signature was created.",
          "format": "datetime",
          "type": "string"
        },
        "proofPurpose": {
          "default": "assertionMethod",
          "description": "Purpose of the proof (typically assertionMethod for claims).",
          "type": "string"
        },
        "proofValue": {
          "description": "The signature value (format depends on type).",
          "type": "string"
        },
        "type": {
          "description": "Signature suite type (e.g., EthereumEip712Signature2021, Ed25519Signature2020, JsonWebSignature2020).",
          "type": "string"
        },
        "verificationMethod": {
          "description": "DID or key identifier of the actual claim signer (e.g., did:pkh:eip155:1:0xABC..., did:key:z6Mk..., did:web:example.com).",
          "type": "string"
        }
      },
      "required": [
        "type",
        "verificationMethod",
        "proofValue",
        "created"
      ],
      "type": "object"
    },
    "evidenceItem": {
      "description": "A piece of supporting material for a claim — a photo, video, screenshot, document, or link. Evidence is what backs up the claim; source is where the claim comes from.",
      "properties": {
        "description": {
          "description": "What this evidence shows or contains.",
          "maxLength": 1000,
          "type": "string"
        },
        "digestMultibase": {
          "description": "Multibase-encoded hash of the content for integrity verification (e.g., zQm...).",
          "type": "string"
        },
        "mediaType": {
          "description": "MIME type of the evidence (e.g., image/jpeg, video/mp4, application/pdf).",
          "type": "string"
        },
        "uri": {
          "description": "URI of the evidence (HTTPS URL, IPFS CID, AT-URI, blob reference, etc.).",
          "format": "uri",
          "type": "string"
        }
      },
      "type": "object"
    },
    "main": {
      "description": "A verifiable claim about any URI-addressable subject.",
      "key": "tid",
      "record": {
        "properties": {
          "aspect": {
            "description": "The specific aspect being rated or assessed (e.g., quality, reliability, timeliness).",
            "type": "string"
          },
          "claimType": {
            "description": "Category of claim. Open vocabulary — common values include skill, credential, impact, endorsement, dispute, rating, review, membership, supersedes, revocation.",
            "type": "string"
          },
          "claimUri": {
            "description": "Persistent URI identity of this claim per the DIF Labs LinkedClaims spec. This is how other claims reference this one (by using this URI as their subject). May be an AT-URI if the claim originated on ATProto, or an HTTPS URL or other URI if it originated elsewhere. Must be a well-formed, persistent, dereferenceable URI.",
            "format": "uri",
            "type": "string"
          },
          "confidence": {
            "description": "Signer's confidence in this claim (0-1).",
            "maximum": 1,
            "minimum": 0,
            "type": "string"
          },
          "createdAt": {
            "description": "When this record was created.",
            "format": "datetime",
            "type": "string"
          },
          "effectiveDate": {
            "description": "When the claim became/becomes true (may differ from createdAt).",
            "format": "datetime",
            "type": "string"
          },
          "embeddedProof": {
            "description": "For claims signed by external methods (MetaMask, aca-py, Digital Bazaar, etc.) before being published to ATProto. Preserves the original signer identity when the ATProto repo owner differs from the claim signer.",
            "ref": "#embeddedProof",
            "type": "ref"
          },
          "evidence": {
            "description": "Supporting materials provided to back up this claim — photos, videos, screenshots, documents, links. For example: source might be a Wikipedia article, evidence is the screenshot you took of it. Source might be you (first-hand), evidence is the video you recorded. Each item has a URI and optionally a content hash for integrity.",
            "items": {
              "ref": "#evidenceItem",
              "type": "ref"
            },
            "type": "array"
          },
          "object": {
            "description": "Optional object of the claim (e.g., skill name, credential type, rating category).",
            "type": "string"
          },
          "respondAt": {
            "description": "URI where endorsements, disputes, or other responses to this claim may be sent. Per the LinkedClaims spec, MAY behave like an ActivityPub inbox.",
            "format": "uri",
            "type": "string"
          },
          "source": {
            "description": "Where this claim comes from — a person, a website, a document. For example: 'I saw this on Wikipedia' (source.uri = the Wikipedia URL), or 'My colleague told me' (source.uri = their DID, howKnown = SECOND_HAND). Source is not evidence — it's the origin of the information.",
            "ref": "#claimSource",
            "type": "ref"
          },
          "stars": {
            "description": "Star rating (for rating-type claims).",
            "maximum": 5,
            "minimum": 1,
            "type": "integer"
          },
          "statement": {
            "description": "Human-readable explanation of the claim.",
            "maxLength": 10000,
            "type": "string"
          },
          "subject": {
            "description": "The entity this claim is about. Can be any URI: HTTPS URL, DID, AT-URI, IPFS CID, or another claim's claimUri (for claims-about-claims such as endorsements or disputes).",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "subject",
          "claimType",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "A LinkedClaim record per the DIF Labs LinkedClaims specification (https://identity.foundation/labs-linkedclaims/). Claims are immutable, signed assertions about any URI-addressable subject. Each claim has a persistent URI (claimUri) so other claims can reference it as their subject, enabling a cross-system web of trust. LinkedClaims flow on ATProto but are not exclusive to it — the claimUri may point to any system where the claim originated.",
  "id": "com.linkedclaims.claim",
  "lexicon": 1
}