Publish Your Credentials
Add your credential definitions to the Registry. The registry discovers
repositories automatically via GitHub topics, or you can request explicit
inclusion via sources.yaml.
Option A: Autodiscovery (Recommended)
The registry automatically discovers GitHub repositories tagged with the
vctm topic in configured organizations. To get your credentials
included:
-
Create credential files in your repository — either
Markdown definitions with
vct:front matter, or pre-built.vctm.json,.mdoc.json,.vc.jsonfiles -
Add a
schema-meta.yamlalongside each credential to declare TS11 properties (attestation level, binding type, rulebook). This is required for TS11 compliance -
Add the
vctmtopic to your GitHub repository: click the gear icon next to About in the sidebar, typevctmin the Topics field, and save -
Wait for the next build cycle — the registry rebuilds every
6 hours. Your credentials will appear at
https://registry.siros.org/your-org/
Option B: Explicit Registration
For repositories outside configured GitHub organizations, or for non-GitHub
repositories, open a pull request to add your repository to
sources.yaml:
sources:
- "git:https://github.com/your-org/your-credentials.git"
# Or with an explicit organization label:
- url: "git:https://your-git-host.example/repo.git"
organization: "Your Org Name"
Repository Structure
Your repository should contain credential files at the top level:
your-credentials/
├── identity.md # Markdown credential definition
├── identity.schema-meta.yaml # TS11 metadata (optional but recommended)
├── identity.vctm.json # Pre-built SD-JWT VC metadata (optional)
├── identity.mdoc.json # Pre-built mDOC config (optional)
├── identity.vc.json # Pre-built W3C VC schema (optional)
└── rulebook.md # Attestation rulebook (optional)
If you provide Markdown files with vct: front matter, the
registry will automatically generate the .vctm.json,
.mdoc.json, and .vc.json files — no external
tools or GitHub Actions required.
TS11 Compliance
To appear in the TS11-compliant API at /api/v1/schemas.json,
your credential needs a schema-meta.yaml file with just two
required fields:
# identity.schema-meta.yaml
attestation_los: iso_18045_high # Required: high / moderate / enhanced-basic / basic
binding_type: key # Required: key / biometric / claim / none
You can also set optional fields:
# Optional fields
version: "1.0" # Default: "0.1.0"
rulebook_uri: https://example.com/rulebook # Link to attestation rulebook
trusted_authorities: # Trust framework references
- framework_type: etsi_tl
value: https://example.com/tl
The following fields are auto-generated and should not be set manually:
id— UUID v5 derived from the registry URL + org/slugsupportedFormats— detected from files present (.vctm.json→dc+sd-jwt,.mdoc.json→mso_mdoc,.vc.json→jwt_vc_json)schemaURIs— generated from detected formats + base URL
Credentials without schema-meta.yaml are still included in the
registry site and the legacy API, but are not listed in the TS11 catalogue.
Need Help?
- Open an issue on the registry repository
- See the Markdown Format Reference for credential authoring
- Check the registry-cli documentation for the build tool
- Review existing repositories in the registry for examples