{
"$type": "com.atproto.lexicon.schema",
"createdAt": "2026-04-19T22:58:04.496Z",
"defs": {
"contact": {
"properties": {
"email": {
"description": "Provider's support email address.",
"type": "string"
},
"phone": {
"description": "Provider's support phone number.",
"type": "string"
}
},
"required": [
"email"
],
"type": "object"
},
"links": {
"properties": {
"privacyPolicy": {
"description": "Link reference to the provider's privacy policy.",
"format": "uri",
"type": "string"
},
"termsOfService": {
"description": "Link reference to the provider's terms of service.",
"format": "uri",
"type": "string"
},
"website": {
"description": "Provider's website reference.",
"format": "uri",
"type": "string"
}
},
"required": [
"website",
"privacyPolicy",
"termsOfService"
],
"type": "object"
},
"main": {
"description": "A declaration of an Atmosphere service provider.",
"key": "tid",
"record": {
"properties": {
"contact": {
"description": "Provider's contact information",
"ref": "#contact",
"type": "ref"
},
"description": {
"description": "Description of the services distinguish and are offered by provider.",
"maxGraphemes": 2560,
"maxLength": 256,
"type": "string"
},
"did": {
"description": "Provider's DID document containing 1 or more of following services: #atproto_pds, #appview_bsky, #appview_notif",
"format": "uri",
"type": "string"
},
"displayName": {
"description": "Abbreviated name for displaying in limited UI space presentations (e.g. button label).",
"maxGraphemes": 150,
"maxLength": 15,
"type": "string"
},
"legalName": {
"description": "Provider's full legal name",
"maxGraphemes": 640,
"maxLength": 64,
"type": "string"
},
"links": {
"description": "URLs of the providers website and service policy documents.",
"ref": "#links",
"type": "ref"
},
"services": {
"description": "The services offered by the provider as listed in the provider's DID document.",
"items": {
"ref": "#service",
"type": "ref"
},
"maxLength": 100,
"minLength": 1,
"type": "array"
},
"theme": {
"description": "URLs of the providers website and service policy documents.",
"ref": "#theme",
"type": "ref"
}
},
"required": [
"did",
"legalName",
"displayName",
"description",
"services",
"theme",
"links",
"contact"
],
"type": "object"
},
"type": "record"
},
"service": {
"properties": {
"id": {
"description": "A service identifier (eg atproto_pds, bsky_appview, bsky_notif, plc_dir)",
"maxGraphemes": 640,
"maxLength": 64,
"type": "string"
},
"uri": {
"description": "Service identifier's URI",
"format": "uri",
"type": "string"
}
},
"required": [
"id",
"uri"
],
"type": "object"
},
"theme": {
"properties": {
"colorDark": {
"description": "HEX color code to use in dark mode presentations. Optional.",
"maxGraphemes": 70,
"maxLength": 7,
"type": "string"
},
"colorLight": {
"description": "HEX color code to use in light mode presentations. Optional.",
"maxGraphemes": 70,
"maxLength": 7,
"type": "string"
},
"logoPNG": {
"description": "Providers branded logo in PNG format (base64 encoded). Optional.",
"maxGraphemes": 40960,
"maxLength": 4096,
"type": "string"
},
"logoSVG": {
"description": "Providers branded template logo in SVG format. Optional.",
"maxGraphemes": 40960,
"maxLength": 4096,
"type": "string"
}
},
"type": "object"
}
},
"id": "social.nstar.provider.declaration",
"lexicon": 1
}