adminapi/schema/devices.json
2025-02-25 12:24:55 +01:00

128 lines
2.9 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "adminapi/schema/devices",
"title": "Following xuuid",
"description": "xuuid is a unique id that is created for tracking purpose it collect some information about a device mobile, pc,... and a xuuid is generated the first time a domain name is access this is why this information is store into a tribes",
"type": "object",
"properties": {
"xuuid": {
"description": "A unique id that is created for a device the first time a user access a domainname",
"title": "Unique id into a browser",
"type": "string"
},
"owner": {
"title": "Owner of this person",
"description": "For accessright purpose this is always equal as alias",
"type": "string"
},
"dt_create": {
"title": "Creation date",
"type": "string",
"format": "date-time"
},
"dt_update": {
"type": "string",
"format": "date-time"
},
"alias": {
"description": "If knowns we get an alias",
"type": "string"
},
"hits": {
"title": "List of hit of 10 minutes",
"description": "not yet formalize {dns:[{tm: timestamp of the event, trk: srctrk, context of the trk}]",
"type": "object"
},
"useragent": {
"title": "user agent the first time",
"type": "string"
},
"typedevice": {
"title": "Type of device",
"type": "string",
"enum": [
"ipad",
"iphone",
"ipod",
"android",
"PC",
""
]
},
"os": {
"title": "OS detected",
"type": "string",
"enum": [
"mobile",
"windows",
"mac",
"linux",""
]
},
"ip": {
"title": "Public IP from api https://ipinfo.io/json",
"type": "string"
},
"city": {
"title": "city from ipinfo.io",
"type": "string"
},
"country": {
"title": "country from ipinfo.io",
"type": "string"
},
"screenWidth": {
"title": "Screen width of the device",
"type": "integer"
},
"screenHeight": {
"title": "Screen height of the device",
"type": "integer"
},
"connection": {
"title": "Bandwidth of thefirst access, this can of course change",
"type": "string"
},
"lang": {
"title": "Language setting of the device",
"type": "string"
},
"plugins": {
"title": "List of current plugins install into the browser during the first access",
"type": "array"
}
},
"required": [
"xuuid"
],
"apxid": "xuuid",
"apxuniquekey": [
"xuuid"
],
"apxidx": [
{
"name": "alias",
"type": "view",
"keyval": "alias",
"objkey": [
"xuuid",
"type",
"os"
],
"filter": ""
}
],
"apxaccessrights": {
"anonymous":{
"C":[],
"U":[],
"D":[]
},
"mayor": {
"R": []
},
"person": {
"R": []
}
}
}