123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- {
- "$schema": "http://json-schema.org/draft-04/schema#",
- "id": "http://nodeinfo.diaspora.software/ns/schema/2.0#",
- "description": "NodeInfo schema version 2.0.",
- "type": "object",
- "additionalProperties": false,
- "required": [
- "version",
- "software",
- "protocols",
- "services",
- "openRegistrations",
- "usage",
- "metadata"
- ],
- "properties": {
- "version": {
- "description": "The schema version, must be 2.0.",
- "enum": ["2.0"]
- },
- "software": {
- "description": "Metadata about server software in use.",
- "type": "object",
- "additionalProperties": false,
- "required": ["name", "version"],
- "properties": {
- "name": {
- "description": "The canonical name of this server software.",
- "type": "string",
- "pattern": "^[a-z0-9-]+$"
- },
- "version": {
- "description": "The version of this server software.",
- "type": "string"
- }
- }
- },
- "protocols": {
- "description": "The protocols supported on this server.",
- "type": "array",
- "minItems": 1,
- "items": {
- "enum": [
- "activitypub",
- "buddycloud",
- "dfrn",
- "diaspora",
- "libertree",
- "ostatus",
- "pumpio",
- "tent",
- "xmpp",
- "zot"
- ]
- }
- },
- "services": {
- "description": "The third party sites this server can connect to via their application API.",
- "type": "object",
- "additionalProperties": false,
- "required": ["inbound", "outbound"],
- "properties": {
- "inbound": {
- "description": "The third party sites this server can retrieve messages from for combined display with regular traffic.",
- "type": "array",
- "minItems": 0,
- "items": {
- "enum": [
- "atom1.0",
- "gnusocial",
- "imap",
- "pnut",
- "pop3",
- "pumpio",
- "rss2.0",
- "twitter"
- ]
- }
- },
- "outbound": {
- "description": "The third party sites this server can publish messages to on the behalf of a user.",
- "type": "array",
- "minItems": 0,
- "items": {
- "enum": [
- "atom1.0",
- "blogger",
- "buddycloud",
- "diaspora",
- "dreamwidth",
- "drupal",
- "facebook",
- "friendica",
- "gnusocial",
- "google",
- "insanejournal",
- "libertree",
- "linkedin",
- "livejournal",
- "mediagoblin",
- "myspace",
- "pinterest",
- "pnut",
- "posterous",
- "pumpio",
- "redmatrix",
- "rss2.0",
- "smtp",
- "tent",
- "tumblr",
- "twitter",
- "wordpress",
- "xmpp"
- ]
- }
- }
- }
- },
- "openRegistrations": {
- "description": "Whether this server allows open self-registration.",
- "type": "boolean"
- },
- "usage": {
- "description": "Usage statistics for this server.",
- "type": "object",
- "additionalProperties": false,
- "required": ["users"],
- "properties": {
- "users": {
- "description": "statistics about the users of this server.",
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "total": {
- "description": "The total amount of on this server registered users.",
- "type": "integer",
- "minimum": 0
- },
- "activeHalfyear": {
- "description": "The amount of users that signed in at least once in the last 180 days.",
- "type": "integer",
- "minimum": 0
- },
- "activeMonth": {
- "description": "The amount of users that signed in at least once in the last 30 days.",
- "type": "integer",
- "minimum": 0
- }
- }
- },
- "localPosts": {
- "description": "The amount of posts that were made by users that are registered on this server.",
- "type": "integer",
- "minimum": 0
- },
- "localComments": {
- "description": "The amount of comments that were made by users that are registered on this server.",
- "type": "integer",
- "minimum": 0
- }
- }
- },
- "metadata": {
- "description": "Free form key value pairs for software specific values. Clients should not rely on any specific key present.",
- "type": "object",
- "minProperties": 0,
- "additionalProperties": true
- }
- }
- }
|