{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/craterview-ai/json-schema/craterview-ai-post-response-schema.json",
  "title": "PostResponse",
  "x-generated": "2026-10-30",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/craterview-ai-openapi.json#/components/schemas/PostResponse",
  "properties": {
    "id": {
      "type": "string",
      "title": "Id",
      "description": "Identifies this submission, for withdrawing it later."
    },
    "status": {
      "type": "string",
      "title": "Status",
      "description": "`pending` until a person decides, then `approved` or `rejected`. Nothing appears in the gallery without that decision."
    },
    "job_id": {
      "type": "string",
      "title": "Job Id",
      "description": "The job this post shows."
    },
    "public_model": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Public Model",
      "description": "The model that produced it."
    },
    "created_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Created At",
      "description": "When the post was submitted. ISO-8601, UTC."
    },
    "decided_note": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Decided Note",
      "description": "What you were told about the decision, when there is anything to say."
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Description",
      "description": "The description this post goes out with: yours as sent, or as the reviewer edited it on approval."
    },
    "withdrawn": {
      "type": "boolean",
      "title": "Withdrawn",
      "description": "Whether you have taken this post back. A withdrawn post is not shown and is not reconsidered.",
      "default": false
    },
    "kept": {
      "type": "boolean",
      "title": "Kept",
      "description": "Whether the job's files are retained — kept past the ordinary schedule. True for every new submission: sharing keeps the job.",
      "default": false
    }
  },
  "type": "object",
  "required": [
    "id",
    "status",
    "job_id"
  ]
}