changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": false,
+ "properties": {
+ "brand": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "url": {
+ "description": "The brand's website, or empty when none is set.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "url"
+ ],
+ "type": "object"
+ },
+ "brand_voice": {
+ "additionalProperties": false,
+ "properties": {
+ "tone": {
+ "description": "professional, confident, educational, conversational, executive, technical, or persuasive; empty when no default is set.",
+ "type": "string"
+ },
+ "updated_at": {
+ "description": "Empty when the tone was never set.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "tone",
+ "updated_at"
+ ],
+ "type": "object"
+ },
+ "competitors": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "aliases": {
+ "description": "Other names answers use for the brand.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "status": {
+ "description": "active or paused. A paused competitor is not tracked.",
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "url",
+ "aliases",
+ "status"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "kind": {
+ "type": "string"
+ },
+ "primary_brand": {
+ "additionalProperties": false,
+ "description": "The brand being tracked; null until it is set.",
+ "properties": {
+ "aliases": {
+ "description": "Other names answers use for the brand.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "status": {
+ "description": "active or paused. A paused competitor is not tracked.",
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "url",
+ "aliases",
+ "status"
+ ],
+ "type": [
+ "null",
+ "object"
+ ]
+ },
+ "reanalysis": {
+ "additionalProperties": false,
+ "description": "Set while answers are being re-read after a brand or competitor change.",
+ "properties": {
+ "job_id": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "status": {
+ "description": "queued, running, or failed.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "status",
+ "message"
+ ],
+ "type": [
+ "null",
+ "object"
+ ]
+ },
+ "segments": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "language": {
+ "description": "Language code, or empty for the market's default.",
+ "type": "string"
+ },
+ "market": {
+ "description": "Country code, or global.",
+ "type": "string"
+ },
+ "models": {
+ "description": "The AI models the segment collects from: every model the plan covers.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "model": {
+ "description": "Model family key.",
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "model",
+ "name"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ },
+ "prompt_count": {
+ "type": "integer"
+ },
+ "prompt_limit": {
+ "type": "integer"
+ },
+ "status": {
+ "description": "active segments collect daily; paused ones do not.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "status",
+ "market",
+ "language",
+ "prompt_limit",
+ "prompt_count",
+ "models"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "site": {
+ "additionalProperties": false,
+ "properties": {
+ "cms": {
+ "description": "Content Studio publishing to a CMS: off, on, or needs_attention.",
+ "type": "string"
+ },
+ "last_visit_at": {
+ "description": "Latest tracked visit.",
+ "type": "string"
+ },
+ "tracking": {
+ "description": "AI traffic tracking: off, setup (installed, no signal yet), listening, on, or paused.",
+ "type": "string"
+ },
+ "url": {
+ "description": "The brand's website, or empty when none is set.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "url",
+ "tracking",
+ "last_visit_at",
+ "cms"
+ ],
+ "type": "object"
+ },
+ "skills": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "excerpt": {
+ "description": "The start of the skill's instructions.",
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "scope": {
+ "description": "organisation: applies to every brand. brand: this brand only.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "name",
+ "scope",
+ "excerpt"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "brand",
+ "kind",
+ "status",
+ "primary_brand",
+ "competitors",
+ "segments",
+ "site",
+ "brand_voice",
+ "skills",
+ "reanalysis"
+ ],
+ "type": "object"
+ },
+ "generated_at": {
+ "description": "RFC 3339 time the response was made.",
+ "type": "string"
+ },
+ "schema_version": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "schema_version",
+ "generated_at",
+ "data"
+ ],
+ "type": "object"
+}