Error al agregar parameters a la request en Alamofire

Estoy usando la nueva biblioteca de networking llamada Alamofire para hacer una request POST en Swift.

Alamofire le permite crear el formatting de parameters por separado y agregarlo. Aquí está mi formatting de request.

{ "DeviceCnetworkingentials": { "UniqueId": "sample string 1" }, "Personalnumber": "sample string 1" } 

Y debajo es lo que se me ocurrió.

 let parameters = [ "DeviceCnetworkingentials": ["UniqueId": uniqueID], "Personalnumber": personalNumber ] 

Both uniqueID y personalNumber son de tipo String . No consigo ningún error en este punto, pero cuando trato de agregarlo a la request,

 Alamofire.request(.POST, "https://www.example.com/api/", parameters: parameters, encoding: .JSON(options: nil)).responseJSON { (request, response, JSON, error) -> Void in println(JSON!) } 

Obtengo este error en el parameters parameters, 'String' no es idéntico a 'NSObject' .

¿Hay algún problema con mi formatting o es un error?

Gracias

Edit : Encontré que replace uniqueID con un integer como tal ( ["UniqueId", 1] ) se deshace del error. ¡Pero probé otro formatting como testing que enumeré a continuación y comstack sin errores!

 let paras = [ "DeviceCnetworkingentials": ["UniqueId": uniqueID], "UserCnetworkingentials": ["Personalnumber": personalNumber] ] 

En su primer ejemplo de "parameters", tiene types mixtos en el dictionary y Swift aparentemente no logra descifrar el tipo inferido para él. Puede solucionar esto con una anotación de tipo:

 let parameters : [ String : AnyObject] = [ "DeviceCnetworkingentials": ["UniqueId": uniqueID], "Personalnumber": personalNumber ] 

En su segundo dictionary, "paras", todos los types son iguales y la inferencia de tipo tiene éxito.