{
  "$id": "https://schemas.ump.dev/v1/client-profile.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "properties": {
    "annual_media_spend": {
      "minimum": 0,
      "title": "Annual Media Spend",
      "type": "number"
    },
    "annual_revenue": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Annual Revenue"
    },
    "channel_spend": {
      "anyOf": [
        {
          "additionalProperties": {
            "type": "number"
          },
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional annual spend per shared-name channel id. When present, maturity's share_spend_with_test_or_cal uses it instead of the share of channels.",
      "title": "Channel Spend"
    },
    "channels": {
      "description": "Shared-name media ids in use.",
      "items": {
        "type": "string"
      },
      "title": "Channels",
      "type": "array"
    },
    "contacts": {
      "description": "Principal ids, never emails in leaves.",
      "items": {
        "type": "string"
      },
      "title": "Contacts",
      "type": "array"
    },
    "currency": {
      "default": "USD",
      "title": "Currency",
      "type": "string"
    },
    "geos": {
      "items": {
        "type": "string"
      },
      "title": "Geos",
      "type": "array"
    },
    "kpis": {
      "items": {
        "type": "string"
      },
      "title": "Kpis",
      "type": "array"
    },
    "name": {
      "title": "Name",
      "type": "string"
    },
    "vertical": {
      "description": "e.g. apparel, beverage, beauty, insurance.",
      "title": "Vertical",
      "type": "string"
    }
  },
  "required": [
    "name",
    "vertical",
    "annual_media_spend"
  ],
  "title": "ClientProfile",
  "type": "object"
}
