{
  "$id": "balance.decrement",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "ownerId",
    "amount",
    "idempotency",
    "goal"
  ],
  "properties": {
    "ownerId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 65536
    },
    "amount": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000000,
      "description": "A positive integer representing how much to charge"
    },
    "idempotency": {
      "type": "string",
      "minLength": 1,
      "maxLength": 65536,
      "description": "An idempotency key"
    },
    "goal": {
      "type": "string",
      "minLength": 1,
      "maxLength": 65536
    }
  }
}
