¿Cómo decodificar JSON en Swift 4?

¿Cómo decodificar siguiendo json usando Swift 4?

{
    "data": {
        "id": 22,
        "packageId": 5,
        "Package": {
            "id": 5,
            "color": "blue"
        }
    },
    "error": false,
    "message": "Successfully Fetched"
}

Lo he intentado usando lo siguiente:

struct Root: Codable {

    enum CodingKeys: String, CodingKey {
        case id = "id"
        case packageId = "packageId"
        case package = "Package"
    }

    var package : Package
    var id : Int
    var packageId : Int
}

struct Package : Codable {
    var id : Int
    var color : String
}

Me está dando el siguiente error:

keyNotFound (LocalNotificationsAlert.Root.CodingKeys.id, Swift.DecodingError.Context (codingPath: [], debugDescription: "Ningún valor asociado con la clave id (\" id \ ").", subyacenteError: nil))

Por favor, ayúdame a solucionar esto, gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta