{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cubi-estate/json-schema/cubi-estate-release-manifest-request-schema.json",
  "title": "ReleaseManifestRequest",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cubi-estate-admin-api-openapi.yml#/components/schemas/ReleaseManifestRequest",
  "properties": {
    "platform": {
      "type": "string",
      "title": "Platform",
      "description": "heroku | vercel"
    },
    "release": {
      "type": "string",
      "maxLength": 80,
      "minLength": 1,
      "title": "Release"
    },
    "commit_sha": {
      "type": "string",
      "maxLength": 64,
      "minLength": 7,
      "title": "Commit Sha"
    },
    "kind": {
      "type": "string",
      "title": "Kind",
      "description": "deploy | rollback",
      "default": "deploy"
    },
    "health_ok": {
      "type": "boolean",
      "title": "Health Ok"
    },
    "idea_public_ids": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "title": "Idea Public Ids"
    },
    "contents_public_ids": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Contents Public Ids",
      "description": "rollback only: the FULL resulting set"
    },
    "parent_manifest_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Parent Manifest Id"
    },
    "submitted_by": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 120
        },
        {
          "type": "null"
        }
      ],
      "title": "Submitted By"
    }
  },
  "type": "object",
  "required": [
    "platform",
    "release",
    "commit_sha",
    "health_ok"
  ]
}