{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/swetrix/refs/heads/main/json-schema/swetrix-project-schema.json", "title": "Swetrix Project", "description": "Schema for a Swetrix analytics project resource", "type": "object", "properties": { "id": { "type": "string", "description": "Unique project identifier" }, "name": { "type": "string", "maxLength": 50, "description": "Project display name" }, "active": { "type": "boolean", "description": "Whether traffic collection is enabled" }, "public": { "type": "boolean", "description": "Whether the dashboard is publicly visible" }, "origins": { "type": "array", "items": { "type": "string" }, "description": "Allowed domain origins for data collection" }, "ipBlacklist": { "type": "array", "items": { "type": "string" }, "description": "IP addresses blocked from analytics tracking" }, "botsProtectionLevel": { "type": "string", "enum": ["off", "basic"], "description": "Level of bot traffic filtering" }, "isCaptcha": { "type": "boolean", "description": "Whether CAPTCHA analytics tracking is enabled" }, "isPasswordProtected": { "type": "boolean", "description": "Whether dashboard requires a password" }, "organisationId": { "type": ["string", "null"], "description": "Organisation the project belongs to" }, "createdAt": { "type": "string", "format": "date-time", "description": "Project creation timestamp" }, "updatedAt": { "type": "string", "format": "date-time", "description": "Last modification timestamp" } }, "required": ["id", "name", "active", "public"] }