Are you looking for a general purpose JSON interpreter / API ? There are many of them around, and in fact I do have my own: https://github.com/Balancingrock/VJson
With VJson I would write: let json = VJson.parse(… your json object…) and then access the metadata as: let buyCount = (json | ”metadata” | ”buy_count”)?.intValue or: var buyCount: Int &= json | “metadata” | “buy_count” To loop over the content of metadata: for item in (json | “metadata”) ?? [ ] { print (item.nameValue) switch item.type { case .object: … case .number: … case .string: … etc... } } Obviously I am plugging my own code here, but there are many others around, I understand that SwiftyJSON is quite popular but I have not used that myself. Regards, Rien Site: http://balancingrock.nl Blog: http://swiftrien.blogspot.com Github: http://github.com/Balancingrock Project: http://swiftfire.nl - An HTTP(S) web server framework in Swift > On 18 Jun 2017, at 04:07, Chris Anderson via swift-users > <swift-users@swift.org> wrote: > > Say I have a JSON object such as: > > { > "id": "4yq6txdpfadhbaqnwp3", > "email": "john....@example.com", > "name":"John Doe", > "metadata": { > "link_id": "linked-id", > "buy_count": 4 > } > } > > And with a struct of: > > struct User: Codable { > var id: String > var email: String > var name: String > } > > How can I decode the `metadata` field into a Dictionary? > > I’ve tried doing things such as, in my struct, > > var metadata: Dictionary > > or > > var metadata: [String: Any] > > But I get the error > > MyPlayground.playground:3:7: note: cannot automatically synthesize > 'Encodable' because '<<error type>>' does not conform to 'Encodable' > var metadata: Dictionary > > A meta or metadata field on many APIs (such as www.stripe.com) can contain > whatever you want, and I still want to be able to process it on the Swift > end. How can I store that meta data field into a Dictionary that I can parse > apart manually after? > > Thanks! > > Chris Anderson > > > > > > _______________________________________________ > swift-users mailing list > swift-users@swift.org > https://lists.swift.org/mailman/listinfo/swift-users _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users