at.happyproto.registry.getArtifact

happyproto.at

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "An artifact's bytes, from the registry's own copy — never redirected to the publisher. A deleted release still serves them. The output encoding is `*/*`, as com.atproto.sync.getBlob's is, and the media type is the one the bytes were stored under.",
      "errors": [
        {
          "description": "No release is indexed at that version.",
          "name": "ReleaseNotFound"
        },
        {
          "description": "The release is indexed but its bytes have not been copied yet, or that artifact type was never published.",
          "name": "ArtifactNotHeld"
        },
        {
          "description": "The registry instance has no identity configured (HAPPYPROTO_DID), so it cannot read its own state. An operator problem, not a caller's.",
          "name": "NotConfigured"
        }
      ],
      "output": {
        "encoding": "*/*"
      },
      "parameters": {
        "properties": {
          "did": {
            "format": "did",
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "type": {
            "default": "package",
            "description": "Which artifact: `package` is the module, `icon`, `banner` and `screenshots` are presentation assets, and a custom type carries an `x-` prefix.",
            "type": "string"
          },
          "version": {
            "type": "string"
          }
        },
        "required": [
          "did",
          "slug",
          "version"
        ],
        "type": "params"
      },
      "type": "query"
    }
  },
  "id": "at.happyproto.registry.getArtifact",
  "lexicon": 1
}

Validate Record

Validate a record against at.happyproto.registry.getArtifact

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:mo7vq4jbioxwafy5zkcc3eux
CID
bafyreigd7atw34rmtph3bthqyoqvvibwf42kkqzqqjynygfgcodyiuhuru
Indexed At
2026-10-19 18:20 UTC
AT-URI
at://did:plc:mo7vq4jbioxwafy5zkcc3eux/com.atproto.lexicon.schema/at.happyproto.registry.getArtifact

Version History (2 versions)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • One version of a plugin, by exact version, whatever its lifecycle state or availability.

  • One release by exact version. Served whatever its status, including `deleted`: that is the left-pad protection the registry exists for.

  • The mirror's copy of a published version's archive. The caller verifies the bytes against the CID, as it would the PDS's.

  • A plugin's versions, most recently indexed first, whatever their lifecycle state.

  • One version of a package. The record key is '<slug>:<version>'. A release at a given version is never modified: a registry that later sees a different CID at this key keeps the first and flags the conflict.

Lexicon Garden

@