Converts a JSON (JavaScript Object Notation) string data representation into CFML data, such as a CFML structure or array.


The data value in ColdFusion format: a structure, array, query, or simple value.


Conversion functions


DeserializeJSON(JSONVar[, strictMapping, useCustomSerializer])

See also

IsJSONSerializeJSON cfajaxproxy Using Ajax Data and Development Features in the Developing ColdFusion Applications


ColdFusion 11: Added the attribute, useCustomSerializer.

ColdFusion 8: Added this function





A valid JSON string expression. 


A Boolean value that specifies whether to convert the JSON strictly, as follows:

  • true: (Default) Convert the JSON string to ColdFusion data types that correspond directly to the JSON data types.
  • false: Determine if the JSON string contains representations of ColdFusion queries, and if so, convert them to queries.
useCustomSerializer true/false. Whether to use the customSerializer or not. The default value is true. The custom serializer will always be used for deserialization. If false, the JSON deserialization will be done using the default ColdFusion behavior.


This function is useful any time a ColdFusion page receives data as JSON strings. It is useful in ColdFusion applications that use Ajax to represent data on the client browser, and lets you consume JSON format data from the client-side Ajax JavaScript. You can also use it on pages that get data from services that supply data as JavaScript function calls with JSON parameters. The DeserializeJSON function converts each JSON data type directly into the equivalent ColdFusion data type, as follows:

  • If the strictMapping parameter is true (the default), all JSON objects become CFML structures.
  • If the strictMapping parameter is false, ColdFusion determines if JSON objects represent queries and, if so, converts them to ColdFusion query object. All other JSON objects become ColdFusion structures. The DeserializeJSON function recognizes a JSON structure as a query and converts it properly if the structure uses either of the two query representation formats described in the SerializeJSON reference.
  • JSON Arrays, Strings, and Numbers become ColdFusion arrays, strings, and numbers.
  • Since ColdFfusion 10, JSON null values become undefined.
  • JSON string representations of a dates and times remain strings, but ColdFusion date/time handling code can recognize them as representing dates and times.


The following example parses JSON data and converts the JSON data into a ColdFusion structure.

"firstname": "John",
"lastname": "Smith",
"age": "36",
      "city":"any city"
  writeOutput(record.firstname & " ");
  writeOutput(record.lastname & " ");
  writeOutput(record.address.number & " ");
  writeOutput(record.address.street & " ");

Expected output:

John Smith 12345 my_street

Adobe logo

Sign in to your account