{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/moment/main/json-schema/moment-filter-list-version-short-schema.json",
  "title": "FilterListVersionShort",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/moment-filter-lists-api-openapi.yml#/components/schemas/FilterListVersionShort",
  "type": "object",
  "properties": {
    "version": {
      "type": "integer",
      "description": "The version of the filter list",
      "x-go-type-skip-optional-pointer": true
    },
    "operations": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/FilterListOperationResponse"
      },
      "description": "The operations that were performed in this version"
    },
    "updated_at": {
      "type": "string",
      "description": "The date and time the filter list was updated",
      "format": "date-time",
      "x-go-type-skip-optional-pointer": true
    },
    "updated_by": {
      "type": "string",
      "description": "The moment_user_id of the user who updated the filter list",
      "x-go-type-skip-optional-pointer": true
    }
  },
  "required": [
    "version",
    "operations"
  ],
  "$defs": {
    "FilterListOperationAction": {
      "type": "string",
      "enum": [
        "add",
        "remove",
        "replace"
      ],
      "description": "The action to perform on filter list values",
      "x-go-type-skip-optional-pointer": true
    },
    "FilterListOperationResponse": {
      "type": "object",
      "properties": {
        "action": {
          "$ref": "#/$defs/FilterListOperationAction"
        },
        "num_values": {
          "type": "integer",
          "description": "The number of values in the specificed operation action",
          "x-go-type-skip-optional-pointer": true
        },
        "prev_num_values": {
          "type": "integer",
          "description": "The number of values in the previous version of the filter list",
          "x-go-type-skip-optional-pointer": true
        },
        "source": {
          "type": "string",
          "description": "The source file name for the operation",
          "x-go-type-skip-optional-pointer": true
        }
      },
      "required": [
        "action",
        "num_values"
      ]
    }
  }
}