{
  "id": "sale.create.dyn",
  "type": "object",
  "required": ["data"],
  "properties": {
    "data": {
      "type": "object",
      "required": ["type", "attributes"],
      "properties": {
        "type": { "type": "string", "constant": "sale" },
        "attributes": {
          "type": "object",
          "required": ["amount", "type", "cart"],
          "properties": {
            "user": { "type": "string", "minLength": 1 },
            "amount": { "type": "number", "minimum": 0, "maximum": 999999 },
            "type": {"type": "integer", "enum": [2]},
            "cart": {
              "type": "object",
              "required": ["id", "shipping_type", "shipping_price", "printing_price", "service_price", "user_price"],
              "properties": {
                "id": { "type": "string", "minLength": 1 },
                "shipping_type": { "type": "string", "minLength": 1 },
                "shipping_price": { "type": "number", "minimum": 0, "maximum": 999999 },
                "printing_price": { "type": "number", "minimum": 0, "maximum": 999999 },
                "service_price": { "type": "number", "minimum": 0, "maximum": 999999 },
                "user_price": { "type": "number", "minimum": 0, "maximum": 999999 }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  }
}
