Reference
JSON Schemas
Complete JSON Schema definitions for DeveloperCredential and AgentCredential.
Machine-readable JSON Schema definitions following JSON Schema Draft 2020-12.
DeveloperCredential v1 Schema
Location: beltic-spec/schemas/developer/v1/developer-credential-v1.schema.json
Schema ID: https://beltic.dev/schemas/developer/v1/developer-credential-v1.schema.json
Key Properties
- Required fields: 15+ core fields including legalName, entityType, kybTier
- Optional fields: 20+ additional fields for enhanced verification
- Custom formats: UUID, ISO dates, DIDs, email
- Conditional requirements: Based on entityType and kybTier
Schema Structure
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://beltic.dev/schemas/developer/v1/developer-credential-v1.schema.json",
"title": "DeveloperCredential v1",
"type": "object",
"required": ["credentialId", "legalName", "entityType", ...],
"properties": {
"credentialId": {
"type": "string",
"format": "uuid"
},
"legalName": {
"type": "string",
"minLength": 2,
"maxLength": 500
},
...
}
}Full schema: Available in the beltic-spec repository (currently private). Request early access.
AgentCredential v1 Schema
Location: beltic-spec/schemas/agent/v1/agent-credential-v1.schema.json
Schema ID: https://beltic.dev/schemas/agent/v1/agent-credential-v1.schema.json
Key Properties
- Required fields: 46+ core fields across 8 categories
- Optional fields: 25+ additional fields
- Safety metrics: 4 metrics × 5 metadata fields each
- Tool definitions: Structured risk taxonomy
- Conditional requirements: Based on tools, data categories
Schema Structure
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://beltic.dev/schemas/agent/v1/agent-credential-v1.schema.json",
"title": "AgentCredential v1",
"type": "object",
"required": ["agentId", "agentName", "agentVersion", ...],
"properties": {
"agentId": {
"type": "string",
"format": "uuid"
},
"agentName": {
"type": "string",
"minLength": 2,
"maxLength": 200
},
...
}
}Full schema: Available in the beltic-spec repository (currently private). Request early access.
Using Schemas
Validation Libraries
JavaScript (AJV):
import Ajv from 'ajv';
import addFormats from 'ajv-formats';
const ajv = new Ajv();
addFormats(ajv);
const schema = require('./developer-credential-v1.schema.json');
const validate = ajv.compile(schema);
const valid = validate(credentialData);
if (!valid) {
console.error(validate.errors);
}Python:
import jsonschema
with open('developer-credential-v1.schema.json') as f:
schema = json.load(f)
jsonschema.validate(credential_data, schema)Custom Formats
Both schemas use custom formats:
uuid- UUID v4 formatdate- ISO 8601 date (YYYY-MM-DD)date-time- ISO 8601 timestampuri- Valid URI/URLemail- Valid email addressdid- Decentralized Identifier format