Beltic logo
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 format
  • date - ISO 8601 date (YYYY-MM-DD)
  • date-time - ISO 8601 timestamp
  • uri - Valid URI/URL
  • email - Valid email address
  • did - Decentralized Identifier format

See Also