{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/fuxux-com/json-schema/fuxux-com-skipped-item-schema.json",
  "title": "SkippedItem",
  "description": "A part of a POST /api/posts request that was not used while the rest of the post went ahead. Listed in `skipped`, which is present only when something was left out.",
  "x-generated": "2026-11-09",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/fuxux-com-openapi.json#/components/schemas/SkippedItem",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "caption",
        "target",
        "media_url",
        "media_urls"
      ]
    },
    "reason": {
      "type": "string",
      "enum": [
        "unknown_platform",
        "not_text",
        "empty",
        "no_connected_account",
        "no_target",
        "no_caption",
        "not_allowed",
        "over_limit",
        "not_a_list"
      ],
      "description": "`unknown_platform`: the caption key is not a platform id. `not_text`: the value is not a string. `empty`: a blank caption. `no_connected_account`: no account on that platform in this space (without `targets`). `no_target`: a caption with no entry in `targets` on its platform. `no_caption` (type `target`): a target whose platform has no caption. `not_allowed`: a media URL that is not a public https URL. `over_limit`: past the 4 media files a post can have. `not_a_list`: `media_urls` was not an array."
    },
    "platform": {
      "type": "string"
    },
    "account_id": {
      "type": "string",
      "format": "uuid",
      "description": "Type `target` only."
    },
    "index": {
      "type": "integer",
      "description": "Type `media_url` only: the position in `media_urls`."
    },
    "message": {
      "type": "string",
      "description": "The same in words."
    }
  },
  "required": [
    "type",
    "reason",
    "message"
  ]
}